Git ile Açık Kaynaklı Projelere Katkıda Bulunmak

Daha önceki yazımda açık kaynaklı projelere nasıl katkı sağlanabilir şeklinde teorik olarak bir giriş yapmıştım. O yazı: Açık Kaynaklı Projelere Nasıl Katkı Sağlanır

Bu yazıda teoriden çok pratik olarak Git ile açık kaynaklı projelere nasıl katkı sağlandığı üzerinde konuşacağım. Burada yazılanları anlamanız için tabiki de Git bilmeniz gerekiyor. Ben buradaki anlatımları GitHub üzerinden yapacağım ancak diğer servislerde de aynı şekilde çalışıyor. Siz de deneme yapmak için bu repoyu kullanabilirsiniz. https://github.com/cangelis/open-source-example

Continue reading

Laravel: Facade olmayan Facadelar

Başlık biraz ilginç olabilir ama gerçekten durum bu :) Bu yazımda, Facade Pattern, Laraveldeki Facadetan ve Laravel’deki Facadeların neden Facade olmadığını anlatacağım.

Facade Pattern

Facade (fasad) pattern bir yazılım tasarım desenidir (design pattern). Yazılım tasarım deseni nedir diye soracak olursanız, şöyle diyim; Yazılım tasarım deseni, sürekli tekrar eden bir problemin ortak bir çözümü anlamına geliyor. Facade’in türkçe anlamı binaların ön cephesi anlamına gelmekte ama ben yıllardır bu patternın neden bu ismi aldığını anlamadım :) Neyse kısacası Türkçe anlamına kafa yormayın.

Continue reading

Takım Halinde Kod Geliştirmek – Git Workflow

Herşeyin başı VCS

Herşeyin başı version control’dur. Yani bir bir version control system’ine sahip olmanız gerekiyor. İstinasız her projede kullanılmalı. Bu yazımda sizlere Git kullanarak takım halinde nasıl kod geliştiririz konusunda bir kaç şey yazacağım. Buna kısaca Git Workflow deniyor.

Git Workflow

Git Workflow ile ilgili şu videoyu izleyebilirsiniz. Git Workflow bize basit bir şekilde Git kullanarak etkili bir şekilde nasıl takım halinde kod geliştirebileceğimizi tanımlıyor.

Continue reading

CentOS Sunucumuza VPN Server Kuruyoruz

Türkiye’deki durum malüm, biz de IT sektöründeki insanlar olarak belki erişim konusunda sıkıntılar yaşayanlar için bir nebze katkımız olabilir. Sunucuza bunu kurarak eşinizle dostunuzla VPN Sunucunuzu paylaşabilirsiniz.

Burada anlatacaklarım için bir CentOS sunucuya ihtiyacınız var ama bu sunucu Türkiye’de ise yaptıklarınız pek işe yaramayacaktır çünkü engelleme zaten Türkiye’de. :)

Continue reading

Laravel 4 Pagination HTMLi Özelleştirme

Laravel 4’ün mükemmel bir sayfalama (pagination) özelliği var. Bu pagination default olarak Bootstrap 2 destekli. Yani siz bu özelliği kullanıp sayfa numaralarını ekrana bastığınız zaman, uygulamanız Bootstrap 2 uyumlu ise hiç bir sıkıntı yaşamıyorsunuz. Amma ve lakin, zurb murb kullanıyorsanız olmaz :(

Continue reading

MailCatcher ile geliştirme sürecindeki mail karın ağrısı çözümü

MeyilKeçır

Yazılım geliştirirken mailleri test etmek tam bir baş belası oluyor. Mail gidiyor mu? Doğru kişiye mi gidiyor? Tasarım düzgün mü? bla bla bla. bir sürü sorun. Bunun için bazı müyendiz arkadaşlar, hayat kurtaran bu MailCatcher denen yazılımı yapmışlar.

Kısaca şöyle çalışıyor; sizin için bir smtp server (giden mail sunucusu) yaratıyor ancak mailleri göndermeyip kendi hafızasına atıyor. (Sözde) gönderdiğiniz mailleride okuyabiliyorsunuz, mail hakkındaki tüm detayları inceleyebiliyorsun. Daha sonra uygulamanızı gerçek hayata geçirdiğiniz zaman smtp server ayarlarınızı değiştirip kalan hayatınıza devam ediyorsunuz.

Continue reading

Satis: Composer ve Private Depolar

Sorun

composer süper bir araç. Hayatımızın her alanında kullanmak istiyoruz. Artık marketten bira istediğimde ben istemeden yanında cips ve sigara vermesini de bekliyorum (en azından benim için required). Neyse kısaca bu yazımda sizlere süper gizli, şirket dışına çıkmaması gereken kodlarımızı private (özel) depolarımızla beraber composer’da nasıl kullanacağımızı anlatacağım.

Continue reading

AngularJS ve Laravel Blade’i aynı anda kullanmak

Sorun

Konu Laravel Blade’i ve AngularJS’i aynı anda kullanmaya gelince, gerçek bir sorun oluşuyor. Hem AngularJS hem de Laravel Blade açma kapama etiketi için çift süslü parantez {{ }} kullanıyor. Neyseki bunun basit bir çözümü var.

Çözüm

Angular’ın $interpolateProvider‘ını kullanarak bu sorunu çözüyoruz.

Kısaca burada, AngularJS’in çift süslü parantez yerine başka birşey kullanmasını söyleyeceğiz.

Mesela:

var customInterpolationApp = angular.module('customInterpolationApp', []);

customInterpolationApp.config(function($interpolateProvider) {
  $interpolateProvider.startSymbol('%%');
  $interpolateProvider.endSymbol('%%');
});

Bundan sonra AngularJS’te %% kullanabilir ve Blade ile {{ }} kullanmaya devam edebilirsiniz.

http://creative-punch.net/2014/01/use-angularjs-laravel-blade-together/ adresindeki makaleden çevirilmiştir.

Açık Kaynaklı Projelere Nasıl Katkı Sağlanır?

 Açık Kaynaklı Proje Nedir?

Kaynak kodlarının herkes tarafından görülebildiği ve genelde bir topluluk (birden fazla kişi) tarafından geliştirilen yazılım projeleridir (Son zamanlarda açık kaynaklı donanımda geliştirilmeye başlanmıştır).

Continue reading

Mockery ile Mock objeleri yaratmak

Önceki yazılarımda tddye giriş yapıp mock objelerini herhangibir araç kullanmadan yaratmıştık. İşte o yazılar:

Test Driven Development (TDD) Nedir?

PHPUnit Nasıl Kullanılır

Test Edilebilir Kod Üretmek

Birim (Unit) Testlere giriş

Mockery Nedir?

Mockery php test araçları ile kullanılabilen basit ama esnek PHP Mock obje frameworküdür.

Continue reading