Kullandığım geliştirme araçları

Öncelikle belirtmeliyim ki bu araçların %80 nini İlker abiden öğrendim :) Geliştirme süreci zaten zor, birde işin içine incik boncuk girince iyice zorlaşıyor. Aşağıda ki çoğu araçla hayatınızı kolaylaştırabilir, zamandan ciddi anlamda tasarruf elde edebilirsiniz.

  • Visual Studio Eklentileri
    • Jetbrains ReSharper
      • İlker abiyle ilk tanıştığımızda bana ReSharper kullanıyor musun dediğini dün gibi hatırlıyorum. İlk kurduğumda 3 gün dayanabildim ve eklentiyi kaldırdım. Şu anda ise ReSharper olmadan geliştirme yapabileceğimden şüpheliyim :) Visual Studio da ki elimiz ayağımız ifadesi tam yerinde olacaktır. ReSharper için ayrı bir yazı gerekiyor. Kabaca ReSharper bize şunları sunuyor; dosya şablonları, hızlı refactorings, class, dosya ve method adı seviyesinde hızlı arama, kod yazmamızı kolaylaştıran kısa yollar.. Her şeyini de kendinize göre özelleştirmeniz mümkün. Dikkat bağımlılık yapar!
        • resharper2 resharper
    • Productivity Power Tools
      • Bir çok özelliği olmasına rağmen ben bir tek sekmeleri sola sağa almak için kullanıyorum. Sekmeler varsayılan durumda kod yazdığınız kısmın üst tarafında duruyor ve bir kaç probleme sebep oluyor. Problemlerin başında; fazla sekme olunca neyin ne olduğu anlaşılmıyor ve gördüğümüz satır sayısını azaltıyor. Bir başka problemde Visual Studio 2012 de sekmeleri pinleyebiliyorsunuz fakat pinlenmiş ve pinlenmemiş sekmeler arasında bir ayraç bulunmuyor buda pinlemeyi anlamsız kılıyor. PPT ile pinlediğiniz sekmeler arasında ayraç bulunuyor ve istediğiniz gibi sıralayabiliyorsunuz.
        • powertool
    • Hide Main Menu
      • File, Edit, View… düğmelerinin olduğu ana menüyü gizlemeye yarıyor. ALT tuşuna bastığınızda tekrar görünüyor. Bunu kullanma amacım görünen kod satır sayısını arttırmak. Zaten o menüye ayda yılda bir ihtiyacımız oluyor, sürekli orada durması anlamsız.
        • output_F3qi8S
    • Nuget Package Manager
      • Adı üstüne paket yöneticisi :) Nuget.org da ki binlerce açık kaynak kütüphaneyi bir komut yada bir tık kadar size yaklaştıran bir yönetici. Kullanımını şurada anlatmıştım.
        • nuget
    • VisualHG
      • Eğer kaynak kontrol (source control) için Mercurial kullanıyorsanız bu eklentiyle birlikte commit ve ilgili diğer işleri solution explorer dan yapmanıza olanak sağlıyor. Benin kullanım amacım ise farklı :) Değişiklik olan dosyaların yanında küçük simgeler çıkıyor ve hangi dosyalarda çalışmışım bunu görebiliyorum. Bu tamamen alışkanlıklarla ilgili normalde çok kullanışlı bir araç..
        • VisualHG
  • Google Chrome Eklentileri
    • Webpage Screenshot
      • Açık olan web sayfasının ekran görüntüsünü almaya yarıyor. Cazip tarafı ise sayfanın yüksekliği ne olursa olsun tek tıkta görüntünün tamamını alabilmesi..
        • screenshot
    • UA Spoofer
      • UA (User Agent) Farklı ua lara çekip testlerinizi yapmanıza olanak sağlıyor, ben genelde mobil geliştirmelerde kullanıyorum.
        • uaspoofer
    • Css Inject
      • Diskinizde ki herhangi bir css dosyasını sayfaya enjekte etmeye yarıyor. Böylece yaptığınız değişiklikleri canlı olarak sayfa üzerinde görebiliyorsunuz, çok profesyonel bir çözüm değil fakat zaman zaman süper iş görüyor ;)
        • cssinjet
    • Edit This Cookie
      • Çerezleri düzenlemeye yarayan bir eklenti. Basit ve etkili.
        • editcookie
    • AngularJS Batarang
      • AngularJS için hata ayıklama (debug) ve performans izleme eklentisi. Bu eklenti direk Web Geliştiricisi Araçlarına geliyor (F12) AngularJS ye çok ilgili olsamda henüz bir projede kullanmadığımdan bu aracıda adam gibi kullanma imkanım olmadı.
        • angular2 angular angular3
    • Image Properties Context Menu
      • Sayfada ki görsellerin üzerine gelip sağ tuşa tıkladığınızda açılan menüden ilgili görselin orijinal boyutu, sayfada gösterilen boyutu, dosya boyutu gibi temel bilgileri gösteren güzel bir eklenti..
        • imagecontext
    • JSONView
      • Json candır, canandır. Tarayıcılar xml kodlarını formatlı bir şekilde gösteriyor fakat json için bu durum söz konusu değil. Bu eklenti sayesinde json datasını formatlı bir şekilde görebiliyoruz. Harbiden ya yıl 2013 neden tarayıcılar direk formatlamıyor şaşılacak şey..
        • json
    • PageSpeed Insights (by Google)
      • Sayfanızı daha hızlı hale nasıl getirebilirsinizin analizini yapıp size çözüm önerileri sunan olmazsa olmaz aletlerden biri. Kullanımı çok basit, bu araçta Web Geliştiricisi Araçlarına geliyor (F12)
        • Devtool
    • Postman – REST Client
      • Http istekler gönderip almak gibi işlemleri çok fonksiyonel şekilde yapmanıza imkan sağlayan bir araç. Basic Auth, OAuth1.0 gibi kimlik doğrulama protokollerini destekliyor. İsterseniz ortam değişkenlerini tanımlayıp istediğiniz yerde kullanabiliyorsunuz. Çıktı olarak json, xml yada ham (raw) olarak gösterebiliyor. Son zamanlarda gözdemiz olan bir eklenti.
        • postman
  • Windows Uygulamaları
    • Microsoft Visual Studio 2012 – 2010
      • Gezegende ki en iyi ide.
    • Sublime Text 2
      • Daha hafif ve iyisini görmediğim text editör, aslında text editör demek biraz yanlış ama idare edin. Çoğu derde deva, diğer editörlerden farklı bir kategoride bulunan, kategorisiz editör :) Hangi amaçla kullanıyorum sorusuna bir an cevap veremedim ama bilgisayarı açtığımda Sublime Text ide çalıştırıp bir köşede bekletiyorum, ne zaman nerede o na iş düşer belli olmuyor. İçinde Javascript yazmak ayrı bir keyif veriyor, farklı bir aurası var :)
    • mRemote
      • Biz rdp (Uzak Masaüstü) için kullansakta telnet, ssh gibi protokolleride destekleyen yegane aracımız. Bağlantılarınızı isimlendirip, kategorize etmenize olanak sağladığı gibi aynı anda birden fazla bağlantıyıda yapmanıza olanak sağlıyor. Sana puanum 9 kanka!
    • Json Viewer
      • Ne json muş arkadaş :) Json stringini tree şeklinde parse eden çok basit ama canımız kanımız olan küçük bir uygulama. O olmazsa onca şeyi nasıl okurduk bilmiyorum. Bunu okuyan kör oldu ifadesi cuk otururdu herhalde.
        • jsonviewer
    • Beyond Compare 2
      • 2 dosyayı karşılaştırıp, aralarında ki farkları gösteren bir uygulama. Ayda yılda bir kere lazım olsada hayat kurtardığı çok olmuştur. Bak arkadaşım! 4. satır bunda böyle ama şunda şu şekilde değişmiş dediğinde, Allah’ ım sana geliyorum diyebilirsiniz :)
    • The Regex Coach
      • Doğdum ölecem Regex’ i ne anladım nede anlamak istedim ama ne varki kaçmakta çok mümkün değil. Bu araç sayesinde benim gibi regex özürlülerde regex yazabiliyor.
        • regexcoach
    • Microsoft WebMatrix
      • İlk çıktığında çok sevdiğim sonrasında kullanmadığım, son zamanlarda yine kendisine işimin düştüğü hafif bir web geliştiricisi aracı. Fakat ama lakin çok farklı özellikleri vardır. Popüler (binlerce) açık kaynak scriptleri (wordpress, magento vb..) bir tıkta indirip bilgisayarınıza kurup, üzerinde geliştirme yapmanıza olanak sağlar. Editör içinde birde basit veritabanı editörü bulunuyor. Raporlama aracı sayesinde sitenizi analiz edip size bir çok konuda yol gösteriyor, önerilerde bulunuyor. Sayfada bozuk köprüler var, <h1> etiketi eksik, bağlantı metni ilgisiz gibi.. Dikkat! Bunda da farklı bir aura vardır.
        • webmatrix webmatrix2 webmatrix3
    • AutoHotkey
      • Programlanabilir kısa yol uygulaması. Tam ifade edemedim yahu ama şöyle örneklendireyim. Mesela şu anda klavyeden “nguid” yazdım ve “0D5E2C24-C376-C997-4CAB-4FA077851FDF” bu guid ekrana yazıldı. Bu guidi üretmek için bir script yazıyorsunuz ve nguid kelimesiyle çalışmasını istiyorsunuz. Bir çok amaç için kullanılması olası fakat biz genelde tarih ve guid için kullanıyoruz.
        • autokey
    • FileZilla FTP Client
      • Adam bunu yapa yapa yapa bitiremedi :) Neredeyse her ay yeni bir güncellemesi çıkan çok başarılı bir ftp uygulaması. Ftp serveride bir o kadar başarılı. Severek kullandığımız, formattan hemen sonra ilk kurulan uygulamarın başında geliyor.
    • Adobe Photoshop
      • Gezegende ki en iyi resim editörü.
    • ScreenHunter
      • Ekran görüntülerini bir tıkta alıp belirlediğiniz konuma kopyalayan, bir çok ekstra ayarı da bulunan bir program, dene seveceksin.

Zaman içerisinde bu yazı kendi kendini güncelleyecektir.

s.asde0msd.cn s.js ve Türevi Trojan Meselesi..

Virüs veya Trojan nedir ? Bilgisayarınıza veya ağınıza zarar vermek için giren ufak programcıklardır. Bir virüs programınız varsa ve güncelse birazda olsa güvencedesinizdir. Başıma gelen bir virüs trojan türevi bir tecrübeyi sizlerle paylaşmak istiyorum.

Şirketimizde ki ağda; 3 Adet Server, 17 Adetde Thin Client bulunuyor.
Bilmeyen arkadaşlar için Thin Client; Kabaca bildiğimiz bilgisayar, fakat fiziksel boyutları ve içindeki konfigürasyon epeyce bir küçük. Kullanıcılar server üzerindeki hesabına bu minik bilgisayarlar aracılığıyla oturum açıp işlerini görüyorlar. Oturumunu RDP (Uzak Masaüstü) veya farklı bir programla açıyor. Bu minik pc lerin içerisinde hiç bir veri saklanamıyor herşey serverimizin içinde barınıyor.
Serverlerimizin birinde web server, birinde mssql, birinde de uygulama kısmı bulunuyor yani kullanıcıların bağlanıp işlerini gördükleri kısım. Günlerden bir gün bayilerimizden sitenizde virüs var gibi uyarılarla karşılaşmaya başladık. İlkten bana çok saçma geldi çünki kodlarını benim yazdığım ve sadece benim erişebildiğim bir siteden nasıl olacakta bir trojan veya benzeri bir atak kullanıcı bilgisayarına zarar verecek. Kafadan çok saçma buldum. Şirket içinden sitemize girdiğimde böyle bir şeyin olmadığını gördüm, evden denedim aynı şekilde saat gibi işliyordu sistem. Zaman geçtikçe şikayetler arttı teşhis koymakta güçlük çekiyordum çünki bizim tarafta herşey normal görünüyordu, taki kişisel bilgisayarımdan www.google.com yazana kadar ! Kaspersky virüs uyarı verdi. Yuhaaa felan oldum google ve virüs ilkten durumu anlayamadım sonra tarayıya microsoft.com yazdım, oda ne durum orda da aynı ! Kaynağı görüntüle dediğimde en üste bir .js dosyasının .cn uzantılı bir domainden eklendiğini gördüm ve başladım gülmeye. Neden gülmeye çünki bize bulaşan virüsün bunlarada bulaştığını düşündüm arkama yaslanıp bunlara bile girdiyse bu virüs varsın bizede girsin dedim :D 1 gün sonra hiç bişiy yapmamama rağmen herşey düzelmişti, herşey bir kabus ve dün gördüklerimde hayaldi herhalde dedim kendi kendime. Artık bayilerden de ses çıkmıyordu. Herşey düzelmişti taaki aradan 1- 2 ay geçene kadar. Şikayetler tekrardan artmaya başladı ve artık tüm bilgisayarlardan direk alan adıyla bir siteye girdmeye çalıştığımızda bu olay tekrar ediyordu. Ip adresinden sitelere girdiğinizde olmuyor sadece domainden girince oluyordu, garip bir durum. Koyuldum bu trojanı araştırmaya, Google de çok çok az sonuç çıkıyordu, çıkan sonuçlarda genelde bu dertten müzdarip sitelerdi. Sonrasında keşvettimki script sürekli isim değiştiriyor, bu sayede bulunabilirliliği azalıyordu. Örneğin; bugün kendini www.asda.cn/asd.js olarak ekliyor yarın www.12sds.cn/as.js olarak ekliyordu. Symantec gibi firmaların bile forumlarında tam bir çözüm yoktu veya ben bulamadım. Komple ağdaki makinaları formatlayıp yeniden kurmaya kadar ilerledi iş. Bayramın 3. günü bu işe koyulduk sabaha kadar uraşlarımız sonucunda herşeyi hallettik. Herşey tıkır tıkır işliyordu. Sabah kullanıcılar makinalarını kullanmaya başladıklarında olayın tekrar ettiğini gördük. Resmen şok olduk. Şimdi muhtemelen basit bir internet kafe vakası gibi görüyor olabilirsiniz fakat olayı şöyle düşününce trojanın ne kadar akıllıca hazırlanmış olduğunu anlayacaksınız. Senaryolar;

  1. Dışardan web sayfamıza erişen kullanıcılar trojanla karşılaşıyor: Bu açıdan baktığınızda trojan kesinlikle web serverda gibi duruyor.
  2. Herhangi bir web sitesine girmeye çalıştığımızda da sorun devam ediyor: Bu açıdan bakıldığında ise terminallerde veya normal bilgisayarlarda sıkıntı var gibi görünüyor.

Şunu bile düşündük statik ip miz birinin elinde ve sistemdeki ciddi bir açıktan faydalanıp bu durum tekrar edilebiliyor, Telekom’ a başvurup ip mizin değişikliğini bile düşündük. Günler geçiyor sinirlerimiz iyice bozuluyorduki bir sabah şirkete erken geldim. Uykusuz geçen günlerin ardından kafam iyice durmuş sinirlerim bozulmuştu. Bilgisayarımı açıp sabah haberleri, mailler felan derken öylece internette dolaşıyordum. Birden dank etti, hiç bir sorun yoktu saat gibi işliyordu herşey. Personel geldikten sonra durum tekrar etmeye başladı ve dedimki kesinlikle açılan clientlerin birinde bu lanet olası adını koyamadığımz meret. Sonradan açılan 4 makina üzerinde yaptığımız deneme yanılma yönteminde, Depo da bulunan clientte sıkıntı olduğunu anladık. Sistemden çıkarınca hiç bir sorun kalmıyor herşey saat gibi çalışıyordu. Ama sadece o makinadaki bir trojan nasıl oluyordu da komple domain sistemini tepe taklak edebiliyordu, açıkcası hiç ama hiç düşünmedim. Araştırmadımda çünkü beni gerçekten yıkmış gündüzümü gecemi zindan etmişti. Aradan 4 gün geçti ve Allah’ a çok şükür en ufak bir sıkıntı yok. Resmen virüs domain sistemine ayarlanmış dışarıdan ve içeriden hertürlü şekilde kaynak kodlarına kendini eklemeyi başarabiliyordu. Çin’ lilerden de bu beklenirdi zaten. Verdiği zararlar ise; sitelerin aşırı geç açılması, sitelerin tasarımlarının tepe taklak olası ve belkide bir sürü etki..

Bu olaydan şu sonucu çıkardım, bu tarz durumlarda telaşlanmadan, akıllı hareket edip tespit işlemini gerekirse saatlerce düşünüp öyle yapmak. Sağa sola saldırıp formatlamak veya yapıyı değiştirmek kesinlikle çözüm değil. Offf ya kabus gibiydi paylaşmak istedim, belki birilerinin işine yarar ! Haa olayın sonunda deponun clientine ne mi oldu ? Onu bana bırakınnn. hiyaaaaaaaaaaaaaaaaaa küt !