24 Kasım 2015 Salı

Sevgili Girişimci Kardeşim

Sevgili Girişimci Kardeşim …

Girişimcilik yolu oldukça meşakkatli bir yol. Bu yola çıkmışsanız türlü türlü insanlar ile karşılaşıyorsunuz. Uyarı mahiyetinde kısa bir hikaye anlatacağım. Geçen aylarda bir girişim hızlandırma programına başvurmuştum. Bu aralar sıklıkla reklamları çıkıyor orada burada. Adı gibi kendi de e-devlet kurumlarını çağrıştırıyor.

Başvurduktan 1 ay kadar sonra Skype ile 10 dakikalık görüşme yaptılar. Sonra belirli bir elemeden geçen kişileri 10dk’lık sunum yapmak üzere çağırıyorlarmış. Bizi de çağırdılar. E-posta’da ve randevu alma formunda ısrarla 15 dakika önceden gelmemizi söylüyorlardı. Ben de süreye riayet eden bir kurum olduğunu görünce sevindim. Saatlerce Bulutkare’nin daha gelişmiş bir sürümünü anlatacağımız az ve öz veri içeren bir sunum hazırladım ve sunum için 20dk önceden orada oldum.

Fakat yarım saatten fazla bekledim. Randevu saatinden 15 dk geçti. Daha sonra benden önceki randevuyu alınca bunun üzerine 45 dakika daha fazla bekleyeceğimi anladım. Bunun için ne bir açıklama ne bir özür dilendi. Yalnızca beklemem gerektiği söylendi. Yaptıkları işin tam Türk işi olduğunu bildirerek çantamı aldım ve oradan ayrıldım.

Sevgili girişimci kardeşim.

Girişimcilik yolunda böyle çakallarla çok karşılaşacaksın.

Bunlar hem sizin şirketinizin %X miktarını masaya oturduğunuz anda pazarlık konusu yapacaklardır. Hem de size saygı göstermeyeceklerdir. Lisan-ı hali ile şöyle derler; “Siz bize muhtaçsınız, istediğimiz kadar sizi bekletiriz. Gel dersek gelirsiniz git dersek gidersiniz.”

Onlar sizi seçtiği gibi sizin de onları seçme hakkınız var. Siz size saygı göstermeyen bir insanla uzun yıllar ortağınız olarak çalışmak ister misiniz?

Bu nedenle yapabiliyorsanız öncelikle kendi öz sermayenizle ilerilere gitmeye çalışın. Her zaman olduğu gibi başarının en büyük anahtarı; çok çalışmaktır.

21 Nisan 2014 Pazartesi

LVM kullanımı

Bir makinede diskin tamamen dolması ya da bölümlendirme yaparken bir bölüme yetersiz alan verdiğimiz durumlar ile genellikle karşılaşırız. LVM (Logical Volume Management / Mantıksal Disk Yönetimi) özellikle sıfırdan bir sistem kurarken son derece işimize yarayan bir yapı olarak karşımıza çıkıyor. LVM sayesinde çalışma zamanında sistemimize yeni bir disk ekleyip, kapasitesi dolmak üzere olan ve bir dizine bağlanmış (mount) alanımızı rahatlıkla genişletebiliriz. LVM ile yapılandırılmış bir sistem temelde Fiziksel Hacimler (Volume) ve bu fiziksel hacimlerin bir araya getirdiği hacim grubundan oluşmaktadır. Bu hacim grubunda mantıksal bölümler oluşturarak bölümlendirmeler yapabiliriz. Aşağıdaki resmi Wikipedia'daki LVM konusundan aldım. Tüm LVM sistemini özetliyor. Sistemi daha iyi anlatabilmek için herkesin hali hazırdaki bir linux sisteminde ek bir disk satın almadan ya da varolan sistemini bozmadan deneyebileceği bir örnek ile olayı izah etmeye çalıştım.



LVM ile basit birkaç işlem yapalım. Örneğin 3 adet 100 GB'lık diskimiz bulunuyor. Normalde RAID kullanmadan bu sistemde 100 GB'dan büyük bir bölümü bilinen NTFS, FAT, Ext3, Ext4 gibi dosya sistemleri ile oluşturmam pek olası değil. Fakat LVM ile bu mümkün. Örneklerimizi GB değil de MB'da çevirerek linux komutları ile test ortamı oluşturalım.

4 adet içerisi hex 0 dolu 100MB boyutunda sanal disk dosyaları oluşturuyoruz.
dd if=/dev/zero of=disk1.img bs=1024 count=102400
dd if=/dev/zero of=disk2.img bs=1024 count=102400
dd if=/dev/zero of=disk3.img bs=1024 count=102400
dd if=/dev/zero of=disk4.img bs=1024 count=102400
Daha sonra bu disklerin içerisine LVM tipinde bölümler oluşturuyoruz. Her bir disk dosyası için aşağıdakileri uygulayabiliriz.
fdisk disk1.img
n,p,enter,enter,enter,t,8e,w
Yani kısaca yeni bir bölüm oluşturuyoruz ve bu bölümün tipini Linux LVM yapıyoruz. Daha sonra değişiklikleri kaydedilerek fdisk uygulamasından çıkıyoruz. Akabinde oluşturulan diskleri bir loop blok aygıt dosyasına bağlayabiliriz. Bu bize sabit disk blok dosyaları (/dev/hda, /dev/sda ...) gibi disk dosyalarına erişim yapmamızı sağlayacak. Tüm disk operasyonlarını yapmakla kalmayıp aynı zamanda mount etmemize de olanak sağlayacaktır.
losetup /dev/loop1 disk1.img
losetup /dev/loop2 disk2.img
losetup /dev/loop3 disk3.img
losetup /dev/loop4 disk4.img
Oluşturduğumuz disk bölümlerinin de birer blok aygıta bağlanması gerekir. Bunun için kpartx uygulamasını kullanıyoruz.
kpartx -a /dev/loop1
kpartx -a /dev/loop2
kpartx -a /dev/loop3
kpartx -a /dev/loop4
Yukarıdaki işlemlerden sonra bölümlere özel blok aygıtlarımız olur. Örneğin /dev/mapper/loop1p1 blok aygıt dosyası doğrudan disk1.img dosyası içinde oluşturduğumuz bölüme bağlanmıştır. Artık LVM'i test edebiliriz. Öncelikle fiziksel hacimlerimizi (disklerimizi) tanımlayalım. LVM terimi olarak Physical Volume şeklinde adlandırılıyor.
pvcreate /dev/mapper/loop1p1
pvcreate /dev/mapper/loop2p1
pvcreate /dev/mapper/loop3p1
pvcreate /dev/mapper/loop4p1
Oluşturduğumuz LVM fiziksel hacimlerine pvdisplay komutu ile bakabiliriz. Bu disklerden 3 tanesini bir hacim grubu (volume group) ile gruplayalım.
vgcreate vg_test /dev/mapper/loop1p1 /dev/mapper/loop2p1 /dev/mapper/loop3p1
Değişiklikleri pvdisplay ve vgdisplay ile izleyebiliriz. vgdisplay çıktısındaki PE ifadesi resimdeki minik fiziksel bölütlerin boyutunu göstermektedir. Şimdi istediğimiz miktarda mantıksal bölüm oluşturabiliriz.
lvcreate -L 180M -n lv_test1 vg_test
Yukarıdaki komut ile 180 MB boyutunda bir mantıksal alan oluşturduk. Geri kalan tüm alan içinde mantıksal bir bölüm oluşturabiliriz.
lvcreate -l 100%FREE -n lv_test2 vg_test
Sonucu görüntülemek için lvdisplay komutu kullanılabilir. Şimdi 180 ve yaklaşık 120 MB boyutlarında iki disk bölümümüz oldu. Hiç kullanmadığımız 4. diskimizi de oyuna katıp mevcutta oluşturduğumuz bölümleri silmeden boyutlarını değiştirelim. Öncelikle fiziksel hacim tanıtılarak hacim grubuna (volume group) ekleniyor.
vgextend vg_test /dev/mapper/loop4p1
Varolan mantıksal bölümlerden ikincisini yeni eklediğimiz fiziksel hacim sayesinde 50 MB kadar genişletelim.
lvextend -L 50M /dev/vg_test/lv_test2 /dev/mapper/loop4p1
İkinci diski doğrudan silmeden genişlettik. Birinci disk için daha çok karşılaştığımız diğer bir durumu deneyelim. Format atılmış ve üzerinde veriler olan bir bölüm senaryosunu test edelim. Bunun için birinci bölümü ext4 dosya sistemi şeklinde biçimlendirelim.
mkfs.ext4 /dev/vg_test/lv_test1
Şimdi ext4 dosya sistemine sahip bölümü büyütelim.
lvextend /dev/vg_test/lv_test1 /dev/mapper/loop4p1
Formatlı bir bölümü büyüttüğümüzden dolayı üzerindeki dosya sistemini de aynı ölçüde boyutlandırmak gerekir.
resize2fs /dev/vg_test/lv_test1
kabaca LVM kullanımı bu şekilde. Yukarıda yaptıklarımız haricinde mantıksal bölümü küçültme ve anlık görüntüsünü alma (snapshot) gibi LVM yetenekleri ile disk yönetimi oldukça kolay bir hale gelmiş oluyor. Kişisel tavsiyem kurulan yeni sistemlerin hatta sanal makinelerin hepsinde LVM kullanmalıyız. Zaten yeni birçok dağıtımda LVM ayarı varsayılan olarak seçili geliyor. Btrfs dosya sistemine geçmeden önce kullanmamız gereken yegane araç gibi görünüyor.

21 Mart 2014 Cuma

"rm -rf" hayatı nasıl karartabilir?

Genelde Linux kullananlar bilirler. Linux kullanımında root ile işlem yapılması pek istenmez. Çünkü root yönetici yetkisine sahiptir ve istenmeyen şekilde sisteme zarar verebiliriz.

Konu ile alakalı çok sık karşılaşılan bir durum da "rm -rf  <dosya ya da dizin>" komutu kullanımıdır. Eğer root yetkisi ile bu işlemi yapıyorsanız tüm dosyalarınızı kaybedebilirsiniz. Bunun bir nebze önüne "trash-cli" paketi ile geçilebiliyor. Kullandığımız dağıtımda bu paketi ekledikten sonra trash-put adlı komut geliyor. Bu komut da dosyaların güvenli bir şekilde çöp kutusuna taşınmasını sağlıyor. Beraber gelen diğer komutlar ise trash-empty ve trash-list.

3 Şubat 2014 Pazartesi

USB Wi-Fi bağdaştırıcısını akıllı telefonlar için erişim noktası yapmak

Çok sık görülen bir durum olmasa da bazen internete bağlı iş bilgisayarımızı ya da ev bilgisayarımızı ufak bir Wi-Fi bağdaştırıcı (adapter) yardımı ile internete bağlamak isteyebiliriz. Bunu evdeki eski bir bilgisayar ya da cüzi bir ücrete aldığımız Rapberry Pi gibi bir cihazla yapabiliriz. Windows'ta benzer işi yapan ufak soft-access point yazılımları olduğunu biliyorum. Fakat Linux bu konuda daha profesyonel çözümler sunuyor. Zaten evlerimizde bulunan ADSL cihazları da bu tarz bir metodla internet paylaşımı yapıyor.

Kişisel olarak Linux Mint kullandığımdan bu dağıtım üzerinde yaptıklarımı anlatacağım. Muhtemelen diğer Debian tabanlı dağıtımların hepsinde bu durum yaklaşık olarak aynı olacaktır. Sanırım diğer dağıtımlarda da ufak tefek farklılıklar ile kullanılabilir.

NetworkManager'ın iptal edilmesi

Uzun bir süredir Linux dağıtımlarında internet bağlantı işlerini NetworkManager adlı servis hallediyor. Bu servis, geleneksel Linux yapılandırma dosyalarını kullanmıyor. Bu nedenle iptal etmemiz daha kararlı bir çözüm elde etmemizi sağlayacaktır. Yalnızca konsol tabanlı bir dağıtım kullanıyorsak muhtemelen NetworkManager zaten yüklü olarak gelmeyecektir. NetworkManager'ın güzel bir özelliği de bizim de bu kurulumda ihtiyaç duyacağımız dnsmasq servisinin kullanımıdır. NetworkManager bu sayede DNS önbelleği de sağlamış olmaktadır.

NetworkManager'ı iptal etmek için /etc/init içerisine /etc/init/network-manager.override adlı bir dosya eklemeliyiz. Daha sonra dosya içeriğine "manual" yazılırsa bir sonraki açılışta NetworkManager otomatik şekilde başlamayacaktır.

Genel Ağ yapılandırması

Geleneksel bir ağ yapılandırması Linux'ta /etc/network/interfaces adlı dosya üzerinden gerçekleşir. Tek ağ kartı olan bir sistemde bu dosya içeriğinin şu şekilde olması beklenir.


Gerekli paketlerin kurulumu

Bu iş için temel iki pakete ihtiyacımız var. hostapd ve dnsmasq. hostapd paketi access point sunucusu olarak hizmet görür. dnsmasq ise bağlanan istemciler için otomatik IP verme (DHCP) işlemini yapacaktır.

sudo apt-get install hostapd dnsmasq

Erişim noktası yapılandırması

/etc/hostapd.conf adlı bir dosya oluşturarak içeriğini aşağıdaki şekilde düzenliyorum.


DHCP sunucu yapılandırması

/etc/dnsmasq.d/ dizini içerisinde hotspot-dhcp adlı bir dosya oluşturarak aşağıdakileri yazabiliriz. Bu yapılandırma ile wi-fi ağ arabirimini ve otomatik ip havuzu aralığını belirliyoruz.


Çalıştırma

Yukarıdaki ayarlamalar ile bir erişim noktası sunusu ve bir otomatik IP sunucusuna sahip olduk. Kabaca tabletimiz ya da akıllı telefonumuz, erişim noktasından bağlantı talep edecektir. Talep esnasında sağlanan kullanıcı ve parola doğru ise erişim noktası sunucusu bu erişime izin verir. Artık fiziksel bağlantı kurulmuştur. Daha sonra bağlı cihazımız DHCP yayınını farkeder ve DHCP sunucusuna bağlantı talebinde bulunur. DHCP sunucusu bağlantı isteğini kabul ederek bağlı cihaza bir IP adresi atar. Bundan sonra yapılması gereken iki ağ arasında (Wi-Fi ve internete çıkılan yerel ağ) bir köprü kurulmasıdır. Bunu birçok şekilde yapabiliriz. En çok bilinen ikisi ise şöyledir.
  • İki ağ arasında köprü oluşturma
  • İki ağ arasında bir yönlendirici oluşturma

İki ağ arasında bir köprü oluşturma, OSI Katman 2 seviyesinde bir yaklaşımdır. Doğrudan iki ağı birbirine bağlar. Bu da wi-fi ağındaki IP paketlerinin doğrudan yerel ağımızda dolaşması manasına gelir ki birçok durumda sıkıntı çıkarabilecek bir yaklaşımdır. Biz daha az sıkıntılı ve her zaman işe yarayacak metodu tercih edelim. Bir yönlendirici oluşturalım. Yönlendirici ile kablosuz ağdan gelen IP paketleri, NAT kuralına göre makinemizin yerel ağ IP adresine çevrilir. Geri gelen paketler ise aynı şekilde tercüme edilir. Kısaca NAT'ın yaptığı şey budur. Neyseki Linux bu işlemi tek bir iptables kuralı ile yapar.

Nihayi olarak bu betik çalıştırıldığında teorik olarak bir akıllı telefon ya da tablet üzerinden kolayca internete bağlanabiliriz.

30 Ocak 2014 Perşembe

Programlama ortamım

Genellikle herkes tarafından yaptığı işlere saygı duyulan Linus TORVALDS, James GOSLING, Joshua BLOCH gibi büyük programcıların çalışma ortamlarını hep merak etmişimdir. Hangi işletim sistemini kullanırlar, metin editörleri hangisidir, program yazrken kahve mi içerler çay mı? Çalışırken müzik mi dinlerler yoksa tamamen sessiz bir ortamı mı tercih ederler?

Öte yandan 5 sene önceki çalışma ortamım ile şimdiki arasında büyük bir değişim olduğunu fark ettim. Hem kendi adıma tarihe not düşmek için hem de belki okuyanlara ufak ta olsa yol göstermek için programlama ortamımı kaleme almak istedim.

Azami hareket kabiliyeti

Evet. Oluşturduğum ortam için mottom bu. Maksimum mobilite. Ek olarak yeni nesil yazılım mimarilerinde çok sık geçen güzel bir ifade de var. "Share Nothing" prensibi. Bu prensip tabiki kimseyle bir şey paylaşmama manasına gelmiyor. :) Bulunduğumuz ortamdan olabildiğince bağımsız olmamız manasına geliyor. Durumsuz (Stateless) sistemler ya da işlevsel (functional) programlamada olduğu gibi ...

Kendi adıma işimle uğraşabildiğim zaman oldukça kısıtlı. Gün içerisinde çok sık bölünüyor ve teknik işlere gün geçtikçe daha az zaman ayırabiliyorum. Bu konuda imdadıma teknolojik oyuncaklarım yetişiyor. Bana her an her yerden bilgiye erişim imkanı sunuyorlar. Seviste, yemekte, mutfakta, otobüste, tuvalette her an her yerde bilgiye ulaşmak artık muazzam bir şekilde kolay. Hatta bazen yeter artık biraz ulaşmıyayım şu bilgiye dediğim zamanlar bile oluyor. Uzun lafın kısası azami haraket kabiliyeti için işte kişisel savunma silahlarım:
  • Bir Android akıllı telefon (Asgari 1 GB Ram'li olması önerilir)
  • Bir Android tablet (7" tabletler okumak ve internette gezinmek için hem ekonomik hem de hafiftir.)
  • Bir modifiye netbook
  • Minimum 8 GB Ram'e sahip bir iş yeri bilgisayarı
  • Minimum 8 GB Ram'e sahip bir ev bilgisayarı (Opsiyonel)
  • USB 3 Harici sabit disk
Bilgiye her an ulaşmak için 3G internet paketi olan Wi-Fi Erişim noktası olarak kullanabileceğiniz bir akıllı telefon hayatınızı kurtaracaktır. Aklınıza gelen hemen her konuyu mekan tanımaksızın internetten araştırabilir. Twitter'da teknoloji trendlerini takip edebilirsiniz.

Fakat bazen uzun makaleler okumak isteyebilirsiniz. Bu konuda esnekliğinizin verdiği imkanlar doğrultusunda, TV karşısında, yatarken, uzanırken, baş aşağı, bir diğer değişle istediğiniz pozisyonda teknik makale okumanızı bir tablet, olabildiğince kolaylaştıracaktır. Okumak için 7" bir tablet hem hafif hem de ekonomik bir çözüm olacaktır. Wi-Fi özelliği olması yeterli. Cep telefonunuzdan internetinizi paylaştırarak ekstra 3G'li bir tablete para ödemekten de kaçınabilirsiniz.

İşin en önemli kısmı ise sanal makine koşturabileceğiniz bir dizüstü bilgisayar. Bu bilgisayar, USB 3 destekli ve minimum 4GB RAM'li ise tadından yenmez. İdeali 13 - 14" civarında minimum 1366x768 ya da 1600x900 çözünürlükte bir taşınılabilir bilgisayar olmasıdır. Tuşlarının yerleşimi de bu konuda çok önemli programcılar için çok önemli olan home ve end tuşlarının mantıklı konumlarda olmasına dikkat edilmesi gerekli.

Şahsen tüm bilgisayarlarımda temel bir işletim sistemi ve bir sanal makine hipervizörü (Virtualbox) kuruludur. Temel işletim sisteminde kişisel hiçbir uygulama kurulu değildir. Virtualbox ve bir tarayıcı olması yeterli. Tüm sihir ise harici usb diskimin içindeki sanal makinelerde gizlidir. Her proje için ayrı bir sanal makinem bulunur. Böylelikle istediğim yere bu makineleri taşır istediğim bilgisayarda program yazabilirim.

Grafik tasarım için VM, A Projesi VM'i, B Projesi VM'i, Genel kullanım VM'i gibi bir çok sanal makinem bulunur. Bunların boyutları da 16 GB civarındadır. Bu sanal makineler evdeki ve işteki iş istasyonlarıma belirli periyotlar ile yedeklenir. Azami hareket kabiliyeti için en çok dikkat ettiğim husus şahsen sanal makine kullanımıdır. Sanal makine teknolojisine her zaman hayran duymuşumdur.

USB Harici diskler, hareketli parça barındırmasına rağmen piyasadaki birçok USB flash diskten daha hızlıdır. Bu nedenle harici disk kullanılmasını tavsiye ederim. Bu konuda iyi bir markanın yüksek ön belleğe sahip bir modelini kullanabiliriz. Tabi olabiliyorsa e-Sata ile bağlanabilen bir SSD harici disk te oldukça iyi bir çözüm olacaktır. :) NTFS biçimlendirilmiş bir harici diske hem Linux hem de Windows sistemlerden kolaylıkla erişebiliriz. FAT32'de olduğu gibi 4GB dosya boyutu sınırına da takılmamış oluruz. Şahsen kişisel deneyimlerimde USB 2 sistemlerde de herhangi bir hız kaybı yaşadığım söylenemez. Hatta USB 3 sistemlerde aynı anda 3 - 4 sanal makineyi hız kaybı yaşamadan açabiliyorum.

Bulut, bulut, bulut ...

Bir diğer hususta Bulut Bilişim kullanımı. Sanal makineniz ya da harddiskiniz bozulduğunda hayatın zindan olmasını istemiyorsanız bulut veri depoları kullanmanızı öneririm. Kodlarınızın tümünü Github, bitbucket gibi yerlerde saklayabilirsiniz. Yazdığınız dokümanları Bitbucket ve Github gibi sitelerin size ayrılan wiki sayfalarında ya da Google Drive'da oluşturabilirsiniz. Tüm önemli dosyalarınızı Google Drive, Ubuntu One, Dropbox gibi bir bulut depolama sağlayıcısında tutmanız size yüksek hareket ve dosyalarınıza her cihazdan erişme kabiliyeti kazandıracaktır.

Ayrıca bir web geliştiricisi iseniz bir PaaS (Platform as a Service) sağlayıcısı kullanmanız geliştirme hızınızı arttıracaktır. OpenShift, Google Application Engine, Heroku gibi platformlar web uygulamalarının kolaylıkla hayata geçmesine imkan tanır. Bu PaaS platformlarının birçoğu ise doğrudan GitHub'a erişebilmektedir.

Şu anda online IDE'ler çok gelişmiş olmasa da bulut üzerinde kod yazacağımız, hiçbir kurulu IDE'ye ihtiyaç duymacağımız zamanlar oldukça yakın. Fakat şimdilik IDE'lere devam. :) Ama bunun dışında geliştirme işini olabildiğince bir Bulut Sistemine dayandırmak en mantıklı çözüm gibi duruyor. Eğer sürekli entegrasyon kullanıyorusanız, bir PaaS platformu üzerinde koşan Jenkins ile sürekli entegrasyon (continious integration) mümkün. Ne kadar bulut o kadar hareket kabiliyeti.

Yazılım ekosistemi

Bir diğer önemli husus ise kullanılan yazılım teknolojileridir. Vazgeçemediğim kişisel tercihlerimden bazıları şu şekilde:
  • Linux Mint XFCE (Minimum RAM maksimum hız ve sadelik)
  • Oracle JDK 1.7 (Kaynak kod uyumluluğum 1.6 olsa dahi her zaman 1.7 JDK kullanırım)
  • vim (GB'larca büyüklükteki dosyayı teklemeden açıp Microsoftçuları kıskançlık krizine sokan editör)
  • IntelliJ Idea (Her kuruşunu hak eden mükemmel bir IDE)
  • Triemax jalopy (Obsesif Kompülsifler için kod düzenleyici)
  • Maven (Java geliştiricileri için can simidi)
  • Git (Linus'un bizlere hediyesi)
  • Gimp
  • Inkscape
  • Jquery
  • Bootstrap
  • Spring MVC
  • Hibernate

İçeçek

Kişisel tercihim kola 2.5 litrelik bir stokla hiç yerinizden kalkmadan saatlerce program yazabilirsiniz. Fakat sağlıklı olmadığı malum :) Çay işyerindeki vazgeçilmez tercihimiz ama siz en iyisi mi su için. Zaten programcılar olarak hep oturuyoruz. Bir ayağımız çukurda :)

Müzik ve ses

Eğer aklımı vermem gereken bir iş ise örneğin bir algoritma yazıyorsam, sessizlik vazgeçilmez şartımdır. Hatta mümkünse kapıyı üzerime kilitlesinler ve benim orada olduğumu bir müddet unutsunlar. Fakat bir web tasarımı ya da standart bir uygulama yazıyorsam ses konusunda şikayet etmem.

Gelecek

An itibari ile durum bundan ibaret. Muhtemel gelecekte her işimizi bulut platformlar üzerinden halledeciğiz gibi duruyor. Bilgisayarlarımız daha ziyade web tarayıcı çalıştırabilecek düzeyde olacak. Fakat geleceğin ne getireceği belli olmaz. Ubuntu Edge gibi hem cep telefonu hem masaüstü olarak kullanacağımız platformlarda yaygınlaşabilir.

29 Ocak 2014 Çarşamba

Donanım dünyası bir devrimin eşiğinde

Facebook'un sahibi Marc Zuckerberg Open Compute etkinliğinde konuştu ve Facebook'un başlattığı Open Compute projesi ile açık mimari tasarıma sahip veri merkezlerine geçtikleri zamandan bu yana yaklaşık 1.2 milyar dolar kar ettiklerini duyurdu. Microsoft cephesinde de karşılık bulan Open Compute projesi veri merkezleri için bir devrin başlangıcı gibi duruyor.

Proje kapsamında network cihazları, ana kartlar ve kabinler gibi temel bileşenler bulunuyor. Paralelde AMD de ARM işlemciler üreteceğini duyurdu. Muhtemel yakın gelecekte açık donanım spesifikasyonlarına sahip ARM işlemcilerden oluşan veri merkezlerini çokca göreceğiz gibi.

28 Ocak 2014 Salı

Merhaba dünya

Uzun zaman önce bir web günlüğü (blog) tutuyordum. Daha sonra nedendir bilinmez bu günlüğü kapattım. Kapattığımdan beri de hep içimde yeni bir günlük oluşturma düşüncesi vardı. Kısmet bugüneymiş.

Şimdi öğrendiklerimi hem kendimle hem de bu günlüğe erişebilenler ile paylaşabileceğim yeni bir platformum bulunuyor. Buradaki notlar, programlama, linux gibi daha ziyade teknik konular hakkında minik gönderiler olacağından çok profesyonel olmayacaktır. Umarım uzun yıllar güzel notlar alırım bu günlüğe.

Okuyanlara ufak bir katkım olursa zaten günlük amacına ulaşmış olacaktır.