PHP პირველი ნაბიჯები (ნაწილი 1)

PHP-logo.svg
იმისათვის რომ დავწეროთ პროგრამა PHP პროგრამირებით, აუცილებელია დაინსტალებული გვქონდეს PHP-ს გამშვები პროგრამა რომლის გადმოწერაც შეგიძლიათ საიტიდან http://php.net
შემდეგ download მენიუზე დააკლიკებთ აირჩევთ თქვენი პლატფორმის შესაბამის ვერსიას მაგალითად windows-ისთვის გადმოწერეთ http://windows.php.net/download/ ბმულიდან. დაინსტალებისთვის საკმარისია არქივი ამოაარქივოდ winrar ან მსგავსი პროგრამით დისკზე მარტივი გზაა C:\php ფოლდერში.რის შემდეგაც დაახლოებით ამდაგვარად გამოყურება ფოლდერი.

php-path-win

შემდეგ windows-ის შემთხვევაში გარემოს ცვლადებში PATH–ს მიუთითოთ ამოარქივებული ფოლდერის ადგილმდებარეობა.

phpenv-win

ამის შემდეგ სასურველია კომპიუტერი გადაიტვირთოს.
php-ს დაინსტალების სხვადასხვა გზა არსებობს, მაგალითად ავტომატიზებული ვარიანტი XAMPP https://sourceforge.net/projects/xampp/ რომელიც მონაცემთა ბაზებსაც აინსტალებს და საჭირო მოდულებს. იმის გაგება თუ სწორად არის PHP დაინტალებული შეგვიძლია ბრძანების ველიდან. Windows-ის შემთხვევაში Run ში აკრიფეთ cmd და გახსნილ ტერმინალში ჩაწერეთ php -v და დააჭირეთ Enter ღილაკს. რის შემდეგაც ტერმინალის ეკრანზე უდნა გამოვიდეს PHP-ს ვერსია და კომპანიის სახელწოდება
დაახლოებით ამდაგვარი:

PHP 5.4.45 (cli) (built: Sep  2 2015 23:48:30)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

win-cmd-php-version

php-ს პროგრამის დასაწერად საკმარისია მარტივი ტქსტური რედაქტორი მაგალითად notepad.
php კოდი აუცილებლად მოქცეული უნდა იყოს <?php და ?> ტეგებში

დავწეროთ პირველი პროგრამა:
გავხსნათ notepad ან რომელიმე ტექსტური რედაქტორი, არა საოფისე Word და ასე შემდეგ, არამედ ტექსტური რედაქტორი. ჩავწეროთ მასში შემდეგი კოდი:

შეინახეთ ფაილი დაარქვით თქვენთვის სასურველი სახელი, დასახელებაში არ უნდა იყოს ცარიელი ადგილები და უდნა შეიცავდეს ინგლისურ ალფავიტურ სიმბოლოებს a დან z-მდე შესაძლებელია, როგორც პატარა ასოებით ისე მთავრულით. აგრეთვე დასაშვებია რიცხვები, სიმბოლოები ტირე “-” და დაბლა ტირე “_” ოღონდ ტირე და რიცხვები დასახელების დასაწყისში არ უნდა იქნას მოთავსებული.
ფაილი უნდა ბოლოვდებოდეს .php გაფართოებით. მაგალითად თუ ფაილს დავარქმევთ test მთლიანობაში ფაილს test.php უდნა დაერქვას. მას შემდეგ რაც შეინახავთ ფაილს გახსენით ტერმინალი და cd ბრძანებით გადადით იმავე ფოლდერში სადაც ფაილი შენიახეთ.

notepad-test.php

 

თუ ფაილს ქვია test.php დაწერეთ ბრძანება
php test.php
და დააჭირეთ Enter ღილაკს.

სწორად შესრულების შემთხვევაში ეკრანზე გამოჩნდება
Hi!

win-cmd-test.php
გაითვალისწინეთ რომ თითოეულ სიმბოლოს დიდი მნიშვნელობა აქვს კოდის დაწერის დროს. მაგალითად თუ ტექსტს

echo “Hi!”;

გამოვაკლებთ ” ან ; სიმბოლოს პროგრამა არ იმუშავებს. ” სიმბოლოებს შორის თავსდება ჩვეულებრივი ტექსტი რომელიც უდნა გამოვიდეს ეკრანზე, echo არის ბრძანება რომელსაც ეკრანზე გამოაქვს ინფორმაცია, ხოლო სტრიქონის ბოლოს წერტილმძიმე ; სიმბოლო მიუთითებს PHP-ს კონკრეტული ბრძანების დასრულებაზე.

როგორ გეგმავს მსოფლიო ქსელის (World Wide Web)-ის მამა დააბრუნოს იგი Facebook-ის და Google-ს გან

ფოტო ვებ გვერდიდან: http://www.digitaltrends.com/web/ways-to-decentralize-the-web/

როდესაც მსოფლიო ქსელი World Wide Web გაეშვა 1990-წელს, ეს  უბრალოდ დიდი ოცნება არ იყო , იგი იუწყებოდა რომ ყველას ექნებოდა საკუთარი ვებგვერდი, სადაც ისინი შეძლებდნენ განეთავსებინათ თავიანთ ხედვები, (მათ არ ერქვათ “ბლოგი” 1999 წლამდე) – და ყველას ექნებოდა საკუთარი მონაცემები საკუთარ ვებგვერდებზე რომელთა შეთავაზებას შეძლებდა ყველა დანარჩენი მომხმარებელებისათვის.

დღეისათვის სულ რამდენიმე კომპანია ფლობს ვებ აქტივების ძირითად ნაწილს – Facebook სოციალური ქსელებისთვის, Google ძიებისათვის, eBay აუქციონებისთვის, და პირდაპირ რომ ვთქვათ მათ თავიანთ მომხმარებელთა მონაცემების გენერირება მოახდინეს. ეს ამ კომპანიებს უპრეცედენტო ძალაუფლებას ანიჭებს ჩვენზე გავლენის მოსახდენად, და მათ იმდენად კონკურენტუნარიან უპირატესობას უქმნის, რომ გულუბრყვილობა იქნება თქვათ, რომ თქვენ აპირებთ დაიწყოთ საკუთარი ბიზნესი, მაშინ როდესაც თქვენ მათ თამაშს თამაშობთ. ის ფაქტი რომ Facebook ფლობს 1.7 მილიარდ მომხმარებლის ინფორმაციას, მათ პროფილებს და რაც უფრო მნიშვნელოვანია, მათი მომხმარებლების ურთიერთობის ისტორიას რითაც თქვენ სავარაუდოდ ვერ მოხიბლავთ გამოცდილ ინვესტორებს, ამას გარდა ინფორმაციას თქვენი მეგობრების შესახებ.”Vendor lock-in” რეალურია.
“სოციალურად დაკავშირებული მონაცემები”- SOLID ვების ინფორმაციას მნიშვნელოვნად ჭკვიანს გახდის:
ეს შთაგონებულია იმისათვის, რომ  განმეორებით მოხდეს ინტერნეტის დეცენტრალიზაცია.

 

ორი სხვა მნიშვნელოვანი ძალისხმევიდან – ზოგიერთი მიიჩნევს blockchain-ს როგორც მესამე მონაწილეს – რაც არქიტექტურულად ძალიან პერსპექტიულია. საკითხავია რამდენად საკმარისია ეს არქიტექტურა.

პირველი მოდის ტიმ ბერნეს-ლიისგან, რომელმაც გამოიგონა ინტერნეტი და მოგვცა როგორც საჩუქარი, ყველანაირი პატენტის, კოპირაითის და სავაჭრო ნიშნის გარეშე. ბერნეს-ლიის ახალი პროექტი, დაიწყო MIT ლაბ-ში სახელწოდებით “სოციალურად დაკავშირებული მონაცემები” (Social Linked Data – SOLID), როგორც საშუალება თქვენი მონაცემების თქვენს მიერვე ფლობისა სანამ არ დაუშვებთ სხვა თქვენთვის სასურველ აპლიკაციებს.

სრულად ინგლისური ვერსია იხილეთ ვებ-გვერდზე: http://www.digitaltrends.com/web/ways-to-decentralize-the-web

რატომ ღია პროგრამული უზრუნველყოფა (OpenSource)?

ამ კითხვაზე ყველაზე მოკლე პასუხია: იმიტომ, რომ განავითარო პროგრამული უზრუნველყოფა და განვითარდე თავად.
დღეს მსოფლიო ბაზრის სერვერების მეტი წილი სწორედ ღია პროგრამულ უზრუნველყოფაზეა დაფუძნებული. სმარტფონები OpenSource-ლიცენზიაზე დაფუძნებულ ოპერაციულ სისტემა ანდროიდზე მუშაობს. ბევრმა არც იცის რომ ანდროიდი არის ლინუქსი, ხოლო ლინუქსი ღია პროგრამული უზრუნველყოფის ლიცენზიით განვითარებული პროდუქტი რომელიც ზემოდ ხსენებულ სერვერებს მართავს. ამ ლიცენზიის მქონე პროდუქციის ჩამოთვლა გაცდება თემის ძირითად შინაარსს და ცნობილ რამდენიმე პროდუქტს ჩამოვთვლი რომლითაც ყოველდღიურად ვსარგებლობთ კომპიუტერთან ან სმარტფონთან ურთიერთობის დროს:

  • Mozilla Firefox
  • Chromium (რომელიც Google Chromes-ს ძრავს წარმოადგენს)
  • VLC Media PLayer
  • Android

ხშირად იმართება დისკუსიები და კამათი იმის თაობაზე თუ რომელი უნდა იყოს განვითარებული, ღია პროგრამული უზრუნველფოფა თუ პროპრიეტარული (საკუთრებაში) მყოფი პროგრამული უზრუნველყოფა რომლის კოდიც არ არის ხელმისაწვდომი გარდა მისი მფლობელებისა და კონკრეტული პირებისა თუ ორგანიზაციებისთვის.
ჩემი პასუხია რომ ეს ორივე აუცილებელია და რატომ?:
თუ გადავხედავთ ტექნოლოგიის ისტორიას ღია პროგრამული უზრუნველყოფის გარკვეული ნაწილი სწორედ პროპრიეტარულ პროგრამული უზრუნველყოფის გაგრძელებაა. მაგალითად ავიღოთ Mozilla Firefox, მისი წინამორბედი 90-იან წლებში  გახლდათ Netscape, რომელიც როგორც კომერციული და საკუთრებაში მყოფი საკმაოდ წარმატებული პროდუქტი იყო. 1997-წელს, ერიკ რეიმონდის გამოცემა “The Cathedral and the Bazaar”, Netscape-სთვის მნიშვნელოვანი მოტივატორი გახდა, რათა 1998-ში მიეღო გადაწყვეტილება მისი ღია პროგრამულ უზრუნველყოფად გარდასაქმნელად.
პროგრამირებაში თითქმის არ არსებობს წარმატებული ვებ პროექტი რომელიც ajax-ტექნოლოგიას არ იყენებდეს. ამ ტექნოლოგიის წინამორბედი გახლდათ პროპრიეტარული პროგრამული უზრუნველყოფა Microsoft Internet Explorer რომლისთვისაც კომპანია Microsoft-მა Iframe ტექნოლოგია შეიმუშავა რომ ვებგვერდის გადატვირთვის გარეშე ჩატვირთულიყო დამატებითი ინფორმაცია გვერდზე, შემდეგ ის Mozilla Firefox-ის ბაზაზე დაიხვეწა და უკვე ajax-ის საწყისი ფორმა მიიღო. Google-მა კი gmail-ში მისი უფრო მეტად დახვეწა მოახდინა რის შედეგადაც ეს ტექნოლოგია ბრაუზერის კონკრეტულ სახეობაზე ნაკლებად იყო დამოკიდებული.
არსი კი იმაში მდგომარეობს, რომ ამ პროდუქტების საწყისი ვარიანტისთვის გარკვეული სამუშაოები ჩატარდა და ხარჯები იქნა გაწეული. ხოლო ღია პროგრამული უზრუნველყოფის საწყისი ვარიანტის დაფინანსების წყარო ხშირ შემთხვევაში თავად ავტორია რომელიც საკუთარ შემოსავალს ხარჯავს, რომ ეს პროდუქტი განვითარდეს და შემდეგ დაინტერესების შემთხვევაში ჩაერთოს სპონსორი ორგანიზაციები. თუმცა ეს არ ნიშნავს რომ ასეთი წამოწყების პროექტები არ არის ძლიერი. მაგალითისათვის NginX სერვერი რომლის ძრავის შექმნა ერთ პროგრამისტს ყაზახეთის მოქალაქე იგორ სისოევს უკავშირდება და დღეს ამ სერვერს ბაზრის მნიშვნელოვანი წილი უკავია, და ისეთი ცნობილი სერვერი როგორიცაა apache ჩრდილში მოაქცია. ვებკონტენტის მართვის ძრავების Joomla, WordPress შექმნა აგრეთვე კონკრეტულ პიროვნებებს უკავშირდება. თავად პროპრიეტარული პროგრამული უზრუნველყოფის მქონე ორგანიზაციებიც როგორიცაა Microsoft, Oracle ღია პროგრამულ უზრუნველყოფაზე არიან დამოკიდებული.
საქართველოში ეს სფერო საკმაოდ ჩამორჩება დანარჩენ მსოფლიოს, რისი მიზეზიც ჩემის აზრით არაინფორმირებულობაა, როგორც ბიზნესმენების ისე სახელმწიფოსი. საჭიროა ინფორმაციის ისეთი ფორმით მიწოდება, რომ მოტივაცია გაუჩნდეთ ამ სფეროს ინვესტირების.
შარშან პოსტი დავდე რამდენიმე ქართულ ფორუმზე სადაც გასაგებად აღვწერე ამ სფეროს მნიშვნელობა, როგორც სახელმწიფოსათვის ისე კერძო სეკთორისათვის.

ავტორი: კახაბერ კაშმაძე

Google Chrome-ს Extension-ები Firefox 45-ში

აგვისტოში კომპანია მოზილამ განაცხადა, რომ WebExtensions-ის API-ზე დაიწყო მუშაობა: როგორც Firefox-ის add-ons -ზე.  ამ ეტაპზე WebExtensions ალფა ვერსიაზეა და აგვისტოს შემდგომ 77 შეცდომაა გასწორებული. 2016 წლის მარტისათვის Firefox 45-ში იგეგმებაWebExtensions-ის სრული მხარდაჭერა. Continue reading Google Chrome-ს Extension-ები Firefox 45-ში

Gogs – Go Git სერვისი

ალბათ არაერთ დეველოპერს გაჩენია სურვილი რომ საკუთარი გიტ სერვისი ჰქონოდა, რადგან მიუხედავად იმისა რომ github არსებობს და საკმაოდ მძლავრი და მრავალფუნქციური სერვისია, აქვს ისეთი შეზღუდვები როგორიცაა მაგალითად თქვენს რეპოზიტორებთან მხოლოდ თქვენს მიერ მითითებულ მომხმარებლებს ჰქონდეთ წვდომა. Continue reading Gogs – Go Git სერვისი

BeeBEEP 3.0.2

download-beebeep3.0.2

გამოვიდა ლოკალური ქსელის მესინჯერის  BeeBEEP-ის 3.0.2 ვერსია.

BeeBEEP გახლავთ open source, peer to peer, lan მესინჯერი რომელიც შექმნა Marco Mastroddi-მა. BeeBEEP-ის საშუალებით შეგიძლიათ ისაუბროთ და გაცვალოთ ფაილები ლოკალურ ქსელში მყოფ მომხმარებლებთან მაგალითად ოფისში, სახლში, ინტერნეტ კაფეში. თქვენ არ გჭირდებათ სერვერი, უბრალოდ გადმოტვირთეთ, გახსენით არქივი და გაუშვით. მარტივი, სწრაფი და დაცული.

Continue reading BeeBEEP 3.0.2

Apache, PHP და MySQL-ის გაშვება ინსტალაციის გარეშე

ალბათ არაერთ დეველოპერს ჰქონია სურვილი რომ პროგრამა ისე დაეინსტალირებინა რომ Apache, PHP და MySQL სერვერების ინსტალაცია არ ყოფილიყო საჭირო. შეიძლება არის სხვადასხვა ვარიანტები მაგრამ ამ შემთხვევაში საუბარი მაქვს USBWebserver-ზე. მისი უპირატესობა სწორედ ის გახლავთ რომ რაც გჭირდებათ არის მხოლოდ გადმოწეროთ არქივი განაარქიოთ და შემდეგ ამ ფოლდერიდან გაუშვათ usbwebserver აპლიკაცია. ვებ საიტის ან აპლიკაციის გასაშვებად საჭიროა ფაილები განათვსოთ root დირეტორიაში. სერვერი შეგიძლიათ განათავსოთ როგორც მყარ დისკზე ასევე ფლეშ მეხსიერებაზე და შემდეგ იქიდან გაუშვათ.

საიტის მისამართი: http://www.usbwebserver.net

USBWebserver

qBittorrent v3.3.0

წარმოდგენილია ტორენტ-კლიენტ qBittorrent-ის ახალი 3.3.0 ვერსია, რომელიც დაწერილია Qt ინსტრუმენტარიუმის გამოყენებით.  ახალ ვერსიაში მრავალი ცვლილებაა შეტანილი და გაცილებით უფრო სრულყოფილია ვიდრე წინა ვერსიები.

ცვლილებების ჩამონათვალი შეგიძლიათ იხილოთ ბმულზე:
http://www.qbittorrent.org/news.php

ჩამოსატვირთად გადადით მისამართზე:

http://www.qbittorrent.org/download.php