Reading bash script variables from file

  
Linux altında çalışırıken çoğuz zaman bash scriptleri yazmak zorunda kalırız. Linux komutlarını kullanarak Slackware ‘in paket yonetim aracı pkgtool türünde uygulamalar yazabiliriz. Geliştirdiğiniz bash uygulamanız geliştikçe ve büyüdükçe fonksiyonlarınızın ve scriptinizin içerisinde kaybolmaya başlarsınız. Çoğu geliştirici bash uygulamalarında kendilerini tek bir dosya içerisinde kod yazmaya zorlarlar. Kullanılacak global değişkenleri de aynı script dosyası içerisine yazarlar. Küçük uygulamalar için bu yontemi kullanmanın hiçbir sakıncası yoktur ancak programınız büyüdükçe bakımı zorlaşır ve kendi geliştiirdiğiniz uygulamanın içinde siz dahi kaybolursunuz. Gerçekte bash scriptlerinizi ya da bash uygulamalarınızı birden fazla dosya kullanarak, değişkenleri ve fonksiyon tanımlarınızı farklı dosyalara kaydederek geliştirebilirsiniz.

Bu şekilde geliştirdiğiniz scriptleriniz anlaşılması kolay, geliştirilmesi açık, yonetimi ve bakımı kolay olacaktır.

Bash betikleriniz için kullanmak istediğiniz tüm değişkenlerinizi bir dosyada tutmak istemiş olabilirsiniz. Diyelim ki tmpfile isimli bir dosyada


my_variable="i am a variable"
your_variable="i am another variable"

şeklinde değişkenlerinizi tutmak istiyorsunuz. Değişkenleri okumak için


get_variable_from_file()
{
echo `cat plugintmp | grep $1 | awk '{print $1}' | cut -d= -f2`
}

echo $(get_variable_from_file my_variable)
echo $(get_variable_from_file your_variable)

If you want to read bash script variables from file

FacebookFriendFeedRedditDiggShare
Posted in Uncategorized | Leave a comment

C++ Derleyicisi ve Eclipse CDT IDE Kurulumu

C++ derleyici ve ide kurulumu

C++ dili derlenen bir dildir, kaynak kodunu yazdıktan sonra belirli aşamalar (is) ile bu kaynak kodu makine koduna çevirilir. Kaynak kodundan makine koduna çevrim işleminde derleyici isimli bir program kullanılır. Linux üzerinde GCC (Gnu Compiler Collection) isimli yine C ile geliştirilmiş açık kaynak kodlu bir derleyicimiz bulunuyor. Gcc, Microsofd işletim sistemlerinde de kullanılabilir.

Gnu Gcc ve Autotools (i) kurmak için Ubuntu ‘da konsolda,

sudo apt-get install build-essentials

yazmalısınız.

Eclipse CDT için Eclipse IDE kurmamız gerekiyor.

JRE ve JDK kurulumu
sudo apt-get install sun-java6-jre
sudo apt-get install sun-java6-jdk

Eclipse Kurulumu
sudo apt-get install eclipse-pde
sudo apt-get install eclipse-jdt

CDT Kurulumu
Eclipse ‘i çalıştırın, Help->Install New Software
CDT için download sitesi ekleyin:
http://download.eclipse.org/tools/cdt/releases/indigo
Kurulum işlemi bitene kadar bekleyin ve bilgisayarınızda C++ ve Java programları geliştirmek için kullanışlı bir IDE ‘niz var artık.

FacebookFriendFeedRedditDiggShare
Posted in C++, Eclipse and Java, Linux | Leave a comment

C++ ile Yazılım Geliştirme

İnsanlar ile anlaşmamızı sağlayan konuşma dilleri gibi bilgisayarlarla konuşmamızı sağlayan bir takım programlama dilleri de bulunmaktadır. C++ dili, programlama dillerinden biridir ancak bu dili diğer dillerden ayırmak gereklidir. C++ programlama dilinin, nasıl geliştirildiği ve programlama dillerin tarihçesine farklı bir makalede değiniriz ancak kısaca C dilinin söz dizimine sahip olduğunu, “C with Classes / Sınıflara sahip C – Sınıflı C” ismiyle ilk çıkışını gerçekleştirdiği gibi konulardan bahsetmekte fayda var. Dilin geliştirilmesinde aktif görev almaya devam eden Bjarne Stroustrup tarafından geliştirilmiştir.

C dilinin struct kullanımının class tanımlayıcısı ile tekrardan düzenlenmesi ile C dilinin sözdizimi ile “Object Oriented Programming / Nesne Yönelimli Programcılık” yapılması mümkün olmuştur ve aralarındaki fark struct içerisindeki üye değişkenlerinin öntanımlı olarak public erişime sahip olmaları, class içerisindeki üye değişkenlerinin ise öntanımlı olarak private erişimine sahip olmalarıdır.

C++ ile yazılım geliştirmek zor mudur? Diğer diller gibi C++ öğrenmeniz için zaman gereklidir, C dilini bilmeniz ya da NYP (Nesne Yönelimli Programcılık) kavramlarını bilmeniz C++ ‘ı öğrenmenizde kolaylık sağlayacaktır. Okuduğum teknik kitaplarda dillerin ve bilgisayarların tarihçesine giriliyor sürekli, bu bazen beni rahatsız ediyor, her romanın girişinde insanlık tarihine bir giriş olmasına gerek olmadığı gibi programlama dillerini anlatan tüm kitaplarda da tarihçenin yer almasına gerek yok sanırım.

C++ dili ile tanışmak istediğinizi biliyorum, bu dil ile ilgili olarak makale ve öğretici (tutorial) elimden geldiği kadarıyla inşaAllah kendi acizane bilgilerim ile birşeyler yazmak istiyorum. C++ dilinin piyasadaki kullanımı, hangi firmaların daha çok kullandığı, ne tür işlerde kullanıldığı, ülkemizdeki konumu, C++ ile geliştirilen açık kaynak kodlu yazılımlar, C++ ve tasarım desenleri, C++ ve kütüphaneleri, üçüncü parti kütüphaneler, C++ frameworkleri, gui araçları, aklınıza gelen çoğu konuyu aktarmak istiyorum. Kimi arkadaşlar kızabilir ancak microsofd ürünlerini kullanmadığım için anlatımları ve örnekleri Linux kullanarak aktaracağım inşaAllah. Ubuntu ‘nun çoğu kişinin kurması ve kullanması açısından daha kolay olduğunu düşündüğüm için Ubuntu kullanacağım ekran görüntülerinde ve kurulum ile ilgili anlatımlarda.

Yazılım dünyasının şekillenmesinde oldukça önemli payı olan bu dil ile neden tanışmak istediğinizi kendinize sormalısınız, C++ öğrenmeniz ülkemiz bilişim sektöründe yaygın kullanılan dillerden Java ve Php (Microsofd ‘un dillerinden bir tane daha var yaygın olarak kullanılan, SiSharp) de öğrenmenizi kolaylaştırır. C dili bilmek nasıl ki C++ öğrenmenizde fayda sağlayacaksa C++ dilini bilmeniz de bahsi geçen dilleri öğrenmenizde size fayda sağlayacaktır. C++ öğrenmek için C ‘yi öğrenmenize, Java ya da Php öğrenmek için de C++ öğrenmenize gerek yok, ancak faydalı olacağını belirtmekte bir sakınca görmüyorum.

C++ öğrenince iş bulur muyum? Komik soru, ama ülkemizdeki bilişim sektörün de “programcı bilmemesi gereken şeyleri de bilsin, bir gün gerekli olabilir (Mars yüzey sıcaklığında yaşayabilen olası mikroorganizmaların listesi gibi)”, “hem arayüz geliştirsin, hem veritabanı tasarlasın, hem sunucu yönetsin, programı da bir ara geliştirsin” türünde akılsızca fikirler olduğunu aktarmak isterim. Programcı seçmek kolay değil, buna katılıyorum. Bu konuda daha detaylı bilgi aktaracağım bir makale hazırlayacağım nasipse. İş bulursunuz bulmasına ama, Türkiye ‘de biraz zor, nedenlerini yukarıda sıraladım.

Yazılarımda ileride anlatılacak konular için (i), ileri seviye konularda aktarılacak konular için (is) kısaltmalarını kullanacağım.

Siz de aklınıza gelen soruları aktarırsanız yazıları ona göre şekillendirmeye çalışacağım. C++ ile ilgili olarak çalışmak için şimdi arkanıza yaslanın ve Bjarne Stroustrup ‘un sitesinde ki C++ ile geliştirilen yazılımları gözden geçirin. Programların çoğunu işitmişsinizdir ya da kullanmışsınızdır diye tahmin ediyorum, diğer kısma geçmeden bilgisayarınıza Ubuntu kurmanızı tavsiye ederim, Ubuntu kurmassanızda Eclipse CDT (C Development Tools) ‘u bilgisayarınıza indirin ve kurun, C++ ile ilgili konuları bu ide ile anlatacağız. C++ için neler gerekli olduğunu da siteden bulabilirsiniz.

C++ ile geliştirilen yazılımlar http://www2.research.att.com/~bs/applications.html

FacebookFriendFeedRedditDiggShare
Posted in C++ | Leave a comment

Jquery Eklentisi – JuiPlus Plugin

  
Hi, 

I was willing to develop a jquery plugin for some years, but i did not have time to do that. I ‘ve developed a jquery plugin for social networks and social sites, plugin also can be used as a ui framework for web applications. Some other jquery plugins are inserted into the plugin, like fcbkcomplete and elastic plugin. JuiPlus is still in development and dont use the juiplus on your production environment and dont use unless you know what you are doing. You have to wait a little bit for the stable release.

Screenshots, documentation and examples are located on http://onurguzel.net/uiplus/. I am still writing and developing for the plugin.

I hope, inşa Allah, i ‘m going to prepare a tutorial about how to develop jquery plugins and publish tutorials on this site, for now i am publishing some screenshots and video about the plugin. You can look at the site and the codes inside the site.

Merhaba, 

Jquery ile ilgili olarak bir eklenti geliştirmek istiyordum, jAlert isimli bir eklentiyi aldım, üzerinde değişiklikler yaptım ve bir kaç farklı jquery eklentisini daha ekleyerek jquery için sosyal bir arayüz eklentisi geliştirdim. Elastic ve fcbkcomplete isimli eklentileri kullanan juiplus eklentisi ilk halinden çok farklı bir duruma geldi. JuiPlus şu an kullanılabilir durumda ancak geliştirme aşamasında olduğu için ve belgelendirmeyi tamamlayamadığım için kullanmanızı tavsiye etmem. Kararlı sürümü için biraz daha beklemeniz gerekiyor.

Ekran görüntüleri, eklentinin nasıl kullanıldığı bilgisine ve belgelendirmeye http://onurguzel.net/uiplus/ adresinden erişebilirsiniz.

Jquery eklentilerinin nasıl geliştirildiği ve bu eklentinin nasıl kullanılacağını
nasipse kısa süre içerisinde yazmak istiyorum. Şimdilik ekran görüntülerini, videoyu ve siteyi inceleyebilirsiniz, ayrıca sitedeki kodları kullanabilirsiniz.

 

Screenshots

JuiPlus Video

FacebookFriendFeedRedditDiggShare
Posted in Ajax, Javascript, Software | Leave a comment

Estağfurullah

Merhaba,

Uzun süredir yazmıyordum, yazılım ile ilgili konularda yazmak istiyordum ancak araya zaman girdi ve bu konular ile ilgili yazmaktan bir süreliğine vazgeçtim.

Çevremde gördüğüm insanların çoğunluğunun herhangi bir konu hakkında bilgi sahibi olmadan rahatlıkla konuşabildiğini görüyorum sıklıkla. İspatları olmadan konuşmak, ben bu şekilde duydum, falan kimse söyledi, yahu nerede yazıyormuş gibi cehaletin simgeleri olan kalıplarla konuşmak adetleri haline gelmiş. İftira ve yalan normal, kendinin değil başkasının yanlışını görmek ise gündelik bir eylem olmuş. İlginçtir günümüzde doğruyu söyleyen ayıplanır olmuş…

Estağfurullah diyelim, Allah bizleri cahillerden ve kötülerden olmaktan korusun. Estağfurullah ( أستغفـــــــر الله ) diyoruz ancak anlamını biliyor muyuz? Kimileri tevazu göstermek için, kimileri yanlış bir şey söylediğinde düzeltmek için kullanıyor. Kimileri ise aynen anlamına geldiğini iddia ediyor.

Estağfurullah ( أستغفـــــــر الله ), Arapça غفر (ga – fe – ra) fiilinden türemiş istif’al babında bir kelimedir ve “Allah ‘tan bağışlanma, mağfiret istiyorum” anlamına gelir. İstiğfar etmek ise, aynı fiilin istif’al babının masdarıdır. Yani istiğfar kelimesi ise “bağışlanma isteme” demektir. İstiğfar etme için kullanılan en güzel sözlerden,

أستغفـــــــر الله العظيـــــــم الذي لا اله الا هو الحي القيـــــــوم و أتـــوب اليــــه

“Hayy ve Kayyum olan kendisinden başka ilah olmayan Aziym olan Allah ‘tan bağışlanma istiyorum ve O ‘na tevbe ediyorum.”

Pişman olduğumuz için, tevbe etmek için kullanabiliriz Estağfurullah ( أستغفـــــــر الله ) ‘ı, ancak aynen ya da aynısı anlamlarına gelmediğini de bilmeliyiz.

Hayırlı Ramazanlar

FacebookFriendFeedRedditDiggShare
Posted in Arapça, Islam | Leave a comment

Install Mulp on Linux

Mulp is developed with C++ and Wx and libxml++ is used for xml parsing, so we need Wx widgets and libxml++.

Wx widgets, http://www.wxwidgets.org
Libxml++, http://libxmlplusplus.sourceforge.net

After installing Wx widgets and libxml++, download mulp source from http://sourceforge.net/projects/mulp

Open the tar ball of mulp

tar xzvf mulp-0.0.1.tar.gz

then cd to mulp directory

cd mulp-0.0.1
./autogen.sh
./configure
make

Login with root user

and

make install

if you are using ubuntu or fedora or a distro with sudo

sudo make install

You installed the mulp software! Now try to run mulp from command line or with Alt+F2 on Kde and Gnome.

FacebookFriendFeedRedditDiggShare
Posted in C++, Linux, Software | Tagged | Leave a comment

Mulp as Ubuntu Control Panel – xml file

Mulp may be used as Ubuntu Control Panel by editing its xml file, the default xml file for Mulp has the applications for Ubuntu. After installing mulp on ubuntu you will see you can use it as the Ubuntu Control Panel.

/etc/mulp/mulp.xml file must be changed like this to use mulp as Ubuntu Control Panel



	
		
			Onur GUZEL onur.oguzel@gmail.com
		
		0.0.1
		http://mulp.sourceforge.net
		Truva Control Panel
	
	
plugins
		
		
		/usr/share/mulp/images/truvalinux.png

		
		
	



Online Update
Install and Remove Software
Boot
Startup Applications
Software Sources
Clean Computer
			
		


Bluetooth
Drivers
Disk Utility
Keyboard
Monitors
Mouse
Sound
Startup Disk
Printing
Power Management
			
		


Login Screen
Log File Viewer
System Monitor
Time and Date
Users and Groups
System Testing
			
		


Network Setting
Network Connections
Personal File Sharing
Network Proxy
Remote Desktop
Bluetooth
			
		


Accessibility
Language Support
Keyboard Layout
Keyboard Shortcuts
			
		


Theme
Compiz Configuration
Main Menu
Nautilius Configuration
Screensaver
Windows
			
		
	

FacebookFriendFeedRedditDiggShare
Posted in C++, Linux, Software | Tagged , , | Leave a comment

Mulp Editing xml file

Mulp is easy to configure and we will discuss what we can do with mulp by editing its xml.

Mulp xml is located under

/etc/mulp/mulp.xml


	
		
			Onur GUZEL onur.oguzel@gmail.com
		
		0.0.1
		http://mulp.sourceforge.net
		Truva Control Panel
	
	
plugins
		
		
		/usr/share/mulp/images/truvalinux.png

		
		
	



Online Update
Install and Remove Software
Boot
Startup Applications
Software Sources
Clean Computer
			
		


Bluetooth
Drivers
Disk Utility
Keyboard
Monitors
Mouse
Sound
Startup Disk
Printing
Power Management
			
		


Login Screen
Log File Viewer
System Monitor
Time and Date
Users and Groups
System Testing
			
		


Network Setting
Network Connections
Personal File Sharing
Network Proxy
Remote Desktop
Bluetooth
			
		


Accessibility
Language Support
Keyboard Layout
Keyboard Shortcuts
			
		


Theme
Compiz Configuration
Main Menu
Nautilius Configuration
Screensaver
Windows
			
		
	

It is not so difficult, you will see so dont be afraid of xml file. We will give you detailed information about xml file.

Mulp file starts with mulp tag and ends with mulp tag.

FacebookFriendFeedRedditDiggShare
Posted in Linux, PHP, Software | Leave a comment

Mulp – Multi Purpose Software Panel

I ‘ve developed an open source software, mulp – multi purpose software panel. Mulp was an effort to develop a control center for Truva Linux, but after i finished the software i realized that i always need a software panel when i develop desktop applications. I decided to make it easy-to-configure and usable in every platform where a software panel is needed.

Mulp is a multi purpose software panel developed in C++ and Wx. It is easy to configure to build your own control panels. Distribution developers will be able to use mulp in their distributions easily. Project is open source and hosted in http://sourceforge.net/projects/mulp

In first version of mulp, there are no plugins, you are able to run the installed programs on your system by editing mulp.xml. In later releases mulp will have the ability to load dynamic plugins, inşAllah.

You may change the mulp into another software panel by editing its xml file, an ubuntu control center application, truva linux control center application, a redhat control center application, sabily control center application… You dont need to edit the source code, you must just edit xml and then you will have your new software panel for your distribution.

FacebookFriendFeedRedditDiggShare
Posted in Linux, PHP, Software | Leave a comment

Php object oriented programming with design patterns

There are some certain designs in software development like in designing an aircraft. While designing an aircraft designers use some patterns, for example there is a pattern for landing gears. They are located under the aircraft and they have supports which are joint to the fuselage. Designer does not have to design a landing gear from scratch, if it is not needed, because he knows what is the pattern of a landing gear. Patterns are like templates while designing and building an automobile or aircraft.

Software developers also need patterns for building their software projects like in other engineering disciplines. People say that Php is not suitable for object oriented programming in their blogs, it is not true! Php gives you chance to develop in procedural concept or in oop concept. Sometimes you need procedural programming though (but dont use procedural programming a lot in your oop projects it will turn your code to spaghetti code, just use where you have to use procedural programming). I used java which is known as the most suitable programming language for oop, but when you see a Main function to run your program people who say php is not a suitable language for oop may think about this about other oop languages like java,c++. This is not true again all of these languages try to make their job, there is not a better or worse programming language. There are programming languages which are suitable for your needs and which are not suitable.

I use object oriented programming in my projects with design patterns they help you to solve some problems in an efficient and fast way.

In php.net site we see some patterns like factory and singleton design patterns, this is really cool, just look at the code dont try to understand if you do not know abything about design pattern i will explain what are design patterns and when we should use them.

class Example
{
    // The parameterized factory method
    public static function factory($type)
    {
        if (include_once 'Drivers/' . $type . '.php') {
            $classname = 'Driver_' . $type;
            return new $classname;
        } else {
            throw new Exception('Driver not found');
        }
    }
}

FacebookFriendFeedRedditDiggShare
Posted in PHP, Software | Leave a comment