‘ All ’ Adlı Kategori

SEO

Nisan 15, 12 Yazan: akın

Sende mi SEO ile uğraşıyorsun diyenleriniz olabilir fakat SEO’nun tam olarak ne demek olduğunu ve yine bazı çalışmalarımın ışığında değişen dinamikleri paylaşınca sanırım bana hak vereceksiniz. Seo’nun açılımı Search Engine Optimization olup arama motorlarına ait robotik botlara yardımcı olmaktan başka birşey değildir.

Seo’nun ilk yıllarında bunun tamamen arama sonuçlarını manipüle etmek olduğu anlaşılıyordu fakat hiçbir zaman öyle olmadı. Google’ın algoritmalarında amaç yüksek puanlı sayfaları üst sıralarda çıkarmaktı. Yaklaşık 200 kriteri değerlendirerek sizin sayfalarınıza bir not verir ve arama sonuçlarındaki başarınız ortaya çıkardı. Anlayacağınız üzere Google milyarlarca sayfaya not vermiş durumda. Tabii ilk zamanlarda (5-6 yıl önce) bir sayfanın öne çıkmasındaki en büyük etmen popülerlikti. Bu durumda sizin sayfanızdan kaç kişi bahsemişse o kadar yukarıda oluyordunuz.

Uyanık kullanıcılar para karşılığı bu işi yapınca Google’da önlem almak zorunda kaldı. Neyseki son PANDA algoritması sayesinde oldukça başarılı oldu. Artık popülerlik değil; özgünlük, güncellik, sosyal medya başarısı gibi kriterler ortaya çıktı. Ayrıca Link Bait gibi bir kavram ortaya atıldı.

Google kısaca kullanıcıya ne kadar iyi bilgi verirsen o kadar öne çıkarsın diyor. Link Bait ise yazılarınızda video, resim.. vs gibi görsel marteryallerin yanında yeterli ölçüde yazı yazmanız gerektiğini anlatan bir terim.

SEO kavramı ikiye ayrılmış durumda. On-Page Seo ve Off-Page seo. On-Page Seo tamamen site üzerinde yapmanız gereken önemli değişiklilerdir. Mesela artık xhtml değilde html5 kullanmanız, W3C standartlarını tutturmanız, User friendly url kullanmanız gibi. Off-Page Seo ise tamamen arama sonuçlarını manipule etmenize yönelik çalışmalardır. Kesinlikle kaçınmalısınız. Bir kere bulaşırsanız sürekli devam etmelisiniz. Bir süre bırakmanız sitenizin hemen spam olarak algılanmasına sebep olacaktır.

Size tavsiyem iyi bir seo uzmanı ile sadece On-Page seo çalışması yapıp geriye kalan tüm enerjinizi kullanıcının daha çok yararlanmasına harcamalısınız.

Google sürekli algoritma değiştirdiği için son değişikliği de kendi tespitlerime dayanarak söylemek istiyorum. Son 2-3 senedir Google’ın en çok sevdiği sistem şüphesiz WordPress’ti fakat özellikle yabancı sitelerdeki gözlemlerim bunun değiştiğini söylüyor eğer Amerika’da başladıysa Türkiye’ye gelmesi yakındır.

WordPress sitelerin index sayıları ve başarılı tartışmasız çok iyiydi. Bunu bilen akıllı! site sahipleri hemen spam sitelerini WordPress olarak açmaya başladılar ve şu anda spam sitelerin neredeyse tamamı WordPress kullandığı için projelerinize wordpress ile başlamak akıl karı değil.

Eskisi kadar sevilmiyor. Custom code ve tasarımla yola başlamanız sizin için daha hayırlı olacaktır. Son olarak bu işi profesyonel olarak yapmayı düşünenlere şunu belirtmek istiyorum. Geçen sene Seo alanındaki ilk firmalardan bir tanesinin yıllık cirosu 100 mio $ olarak açıklandı.

Ülkemizde oldukça bakir olan bu sektöre girerseniz bir kaç sene içerisinde doğru iş yaptığınızı anlarsınız. Bu arada size hemen bir başlangıç noktası vereyim. Google her yeniliği önce Amerika’da yapıyor tutarsa diğer ülkelere uyguluyor. Bu durumda gözünüz sürekli Google Amerika’daki değişikliklerde olmalı.

Sen neden girmiyorsun diye aklınıza bir soru gelirse, şunu belirteyim kariyer hedefim çok farklı bir noktada..

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Tespitler

Nisan 14, 12 Yazan: akın

Zaman zaman gözüme çarpan şeyler hakkında birşeyler yazdığımı blogumu takip eden kişiler biliyorlardır.

Zaman kısıtından dolayı sohbete girmeden aktarmak istediğim konuya giriyorum. Türk teknoloji kullanıcılarının çok büyük bir kısmı hayatlarını kolaylaştıracak ve düzene sokacak yazılımları kullanmıyorlar varsa yoksa oyun, sosyal medya veya instigram gibi eğlenmeye yönelik yazılımları kullanıyorlar.

Bunları gereksizdir demiyorum fakat ellerindeki cihazların daha etkileşimli kullanılabilmesi için eğlencenin dışında da kullanmalarını öneririm. Mesela bir iki gün önce App World’de dolaşırken finans konusundaki yazılımları inceliyordum.

Finans yazılımlarından kastım kişisel olarak harcamalarınızı kontrol edebileceğiniz, bütçeleme yapabileceğiniz yazılımlardan bahsediyorum. Yurtdışında oldukça yoğun olarak kullanılan bu yazılımlar Türkiye’de malesef kullanılmıyor. Bu yazılımlar günlük harcamalarınızı, faturalarınızı vs girerek gününde ödemenizi sağlıyorlar. Belli sürede para biriktirmeniz için harcamalarınızı düzenliyorlar. Ülkemizdeki bankacılık sisteminin oldukça gelişmiş olmasından dolayı bu yazılımların kullanımı gereksizleşebiliyor  fakat benim anlatmak istediğim konu bu değil tabii.

Finans yazılımlarına ek olarak diyet veya spor gibi sağlık yazılımları da olabilir ya da belli bir alışkanlığınızı sistemik olarak terketmenize yardımcı olacak (sigara gibi) yazılımlar da örnek verilebilir. (Eğitim, Okuma alışkanlığı vs..) Bu örnekler daha da arttırılabilir.

Kısaca bu yazımdan etkilenip telefonunu daha efektif kullanmak isteyenler, öncelikle kendilerini gözlemleyerek değiştirmek/geliştirmek istedikleri yönleri ile alakalı yazılımları App Storeları, Worldleri gezerek keşfedebilir telefonlarını asistanları olarak kullanabilirler.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Sancılı Dönem

Kasım 17, 11 Yazan: akın

Bir kaç gündür blogum sancılı dönemden geçiyor. Sürekli kesintiler, kırık kod blokları ortaya çıkıyordu. Bunun aslında iki nedeni var.

Birincisi datacenter değiştirme sürecinde taşınma işlemleri. Nasıl mı? Bir datacenter la anlaşıyorsunuz. İlk başlarda sürekli hatlar gidip gelir, siz birşey demezsiniz “idare edersiniz”. Sonra datacenter sorunları çözer, kesintiler biter ve çok büyük işler başarıyormuş gibi havalara girerler. Bir problemde datacenter yetkilisine ulaşamazsınız. Halbu ki en temel görevleri kesintisiz yayın sağlamak. Bunun için insanlar onlara para ödüyorlar fakat o farkındalığı henüz sağlayamadılar. Kısaca taşındım.

Diğer bir nedenim ise wordpress blogumu güncelleme çalışmaları. Kullandığım birçok plugin’in yeni versiyonları kullandığım sürümde çalışmayınca, bazen ziyaretçiler yazı yerine kodlar gördüler. WordPress’i daha önce güncellediğim de kendi eklediğim tüm ekstra fonksiyonların patladığını, dağıldığını gördüm. Güncelleme aşaması benim için çok zaman alıcı ve zorlu geçmişti. O yüzden wordpress’i güncelleme işine hiç sıcak bakmadım ve pluginleri düzeltme yolunu seçtim.

Pluginleri düzeltirken bir ara kendimi başkalarının kodlarını düzenlerken, eski veriyona uyarlarken buldum. Yaptığım çalışmalar pluginlerin gelişmesi için katkı sağlasa elbette devam ederdim fakat benim yaptığım tüm çalışma eski sürüme uyumlu kodlar eklemek olduğu için bu yoldan vazgeçtim. Kimse geriye gitmek için çaba sarfetmemeli di mi? : )

En sonunda gözümü kapadım ve wordpress’i güncelledim. Tüm senaryo başa sardı tabii. Çalışmalarımın neticesinde wordpress’in en güncel halini yakalayabildim. Şu an için bir sorun gözükmüyor hadi bakalım.

Bu süreç içerisinde Google sürekli “Hayırdır, bir problem mi var? Yardım ister misin? Bizim çözümlerimize bir göz at istersen” gibi yardımda bulundu. Tüm sorun ve çözüm aşamasında desteğini benden eksik etmeyen Google’a teşekkür ediyorum : p

Kısaca yordun beni WordPress : )

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Retail Store Connect Gereksinimleri ve Kurulumu

Kasım 11, 11 Yazan: akın

Retail Pos ve Ax For Retail arasındaki veri alışverişinin bu servisler üzerinden yapıldığını söylemiştim. Microsoft Dynamics’in sunduğu Retail sürecinde aslında dört modül işlemektedir. RSC ise bu ayaklardan bir tanesini temsil ediyor.

Retail Modüllerinin kurulumu aslında oldukça basittir. Bir kaç NEXT tuşuna basarak bu işi tamamlayabiliyorsunuz. Biraz zahmetli olan kısım ise kurulum sonrası ayarlarda ve sorunsuz bir şekilde veri alışverişlerinin gerçekleşmesinde.

Özellikle perakende sektöründe her akşam Merkez ve Kasalar arasında veri alışverişi yapılır. İşlemler merkeze, personel, ürün stok bilgileri ise kasalara gönderilir. Alış verişi sağlayan ise RSC servisidir.

Tanım kısmını geçip asıl yazının amacı olan noktalara geleyim. RSC kurulumu 1-2 dakika civarı süren çok küçük bir dosyadır fakat bu kurulumu yapmadan önce aşağıda listesini verdiğim kütüphaneleri bilgisayara kurmuş olmanız gerekir.

* Microsoft SQL Server 2005, 2008 Standard, Enterprise veya Express Edition (normal veya R2)

* Windows Installer 4.5

* Microsoft .NET Framework Version 3.5

* Microsoft Visual C++ 2008

* OPOS Comon Control Objects

Bu gereklilikleri bilgisayarınıza kurduktan sonra tek yapmanız gereken RSC kurulumunu başlatmanız.

Bu noktaya kadar yukarıdakileri eksiksiz yapmış olmanız gerekiyor. Şimdiki adımda RSC servisinin jobları takip edebileceği ve loglayabileceği veritabanını kurmamız gerekiyor.

Retatil Store Connect kurulum klasörüne gidip DATA dizininde yer alan AXRETAILMSG scriptini Sql Server da çalıştırmamız gerekiyor.

AXRETAILMSG Dizin

Scripti çalıştırırken bazı hatalarla karşılaşabilirsiniz. Önemli hatalar olmamakla birlikte çabucak düzeltip scriptin düzgün çalışmasını sağlayabilirsiniz.

Şimdiki adımda ise RSC servisini kurmamız. Burada öncelikle Retail veritabanlarına yetkisi olan bir kullanıcıya ihtiyacımız var. Size tavsiyem servislerin çalışmasını sağlayacak Local Admin yetkisine sahip bir kullanıcı tanımlayıp, hepsinde aynı kullanıcıyı kullanmanız.

retail store connect service

Retail Store Connect Settings’i çalıştırıp, servis ismini yazarak Add diyoruz ve servis kurulumuna başlıyoruz.

retail store connect kurulumu

İlk ekranda Logların tutulacağı database bilgilerini yazıyoruz. Server ismini ve verdiğimiz database ismini yazıyoruz. RSC’nin daha önceki sürümlerinde veritabanı ismi sabitti ama şimdi değiştirebildiğimiz için bu ekran karşımıza çıkıyor.

retail store Connect Account Tanımı

Veritabanı tanımından sonra karşımıza çıkan ekran RSC servisinin hangi kullanıcı ile başlatılacağını belirtiyor. Kuruluma başlamadan önce Local admin yetkisi ile tanımladığımız kullanıcıyı bu ekranda kullanıyoruz. Bu ekranı da geçtikten sonra RSC ayarları tamamlanmış oluyor.

Son adım ise RSC servisini çalıştırmadan Servisler ekranını açıp kullanıcı ayarlarını güncellemek. Servisler ekranı için Start > Run > services.msc yazabilirsiniz. Açılan ekranda Retail Store Connect servisini bulup sağ tıklayarak özellikler ekranını açıyoruz.

Açılan ekranda LogOn sekmesinde kullanıcı bilgilerini tekrar yazarak APPLY diyoruz. Şimdi servisimizi tekrar çalıştırabiliriz. RSC ayarları için yapılması gerekenleri tamamladık.

Daha önceki şu yazımda veri iletişimi yapılacak her noktaya RSC servisi kurulması gerektiğinden bahsetmiştim. Bu durumda diğer noktalara da bu servisi kurup yukarıda bahsettiğim ayarları gerçekleştirmeniz gerekiyor.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Paul Klee

Kasım 06, 11 Yazan: akın

klee-two-men-meet-each-supposing-the-other-to-be-of-higher-rank

Karşısındakini kendinden daha yüksek bir mevkide sanan iki adamın karşılaşması, 1903

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Axapta Formlarında _ds Uzantısı/Takısı Ne Anlama Gelir?

Kasım 04, 11 Yazan: akın

Axapta’da kod yazmaktan çok hangi kodu nerede kullanacağınız, ve kulandığınız eklerin methodların hangi class’lardan geldiğini bilmek önemli. Genel itibariyle axapta yazılımı müşteri ihtiyacına yönelik customize edilebilen bir yazılım.

Elbette ki içinde projeler yaratıp import/export işlerini gerçekleştiriyorsunuz, projelerinizi geliştirirken takip etmeniz gereken geliştirme yönetmleri ve uygulamanız gereken iş kuralları var fakat genelinde kullanılan kodlar bellidir.

Bilinmesi gereken noktalardan bir tanesi ise _ds takısıdır. <_ds> takısının kullanımı <tabloismi><_ds>.methodismi(); şeklindedir. Sondaki _ds uzantısı bir tanımlayıcı görevi görür. Formun tabloismi ile belirtilen datasource’undan belirtilen (methdoismi) method’un çağrılması amaçlanır. Bu methodlar, FormDataSource classında tanımlanırlar.

Deneme yapmak için, Yeni bir form oluşturup datasource’ına custtable’ı atın. Daha sonra Form methodlarına sağ klikleyip init() methodunu override ederek aşağıdaki kodu methoda yazmanız yeterli.

custtable_ds.getFirst();

FormDataSource classında tanımlanmış olan ve kullanabileceğiniz diğer methodları incelemek isterseniz, Developer Guide’ı kullanabilirsiniz.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Axapta’da Tablo’ya Find Methodu Eklemek

Kasım 03, 11 Yazan: akın

Axapta’da geliştirme yaparken genel bir tavsiye olarak orjinal tablolaları ve formları değiştirmemenizi isterler. Ek işlevsellik eklemek için Axapta’da bulunan tablolara ve formalara dokunmak yerine kendi tablolarınızı ve formlarını oluşturmanız ve bunları Extended Data Types lar ile Axapta’ya bağlamanız beklenir.

Axapta’nın orjinal halini bozmadan yapacağınız her özelleştirme, güncellemelerde işinizi oldukça kolaylaştırarak zamandan tasarruf etmenizi sağlayacaktır.

Lafı fazla uzatmadan hemen bahsetmek istediğim noktaya geliyorum. Tabloyu oluşturduğunuz zaman bu kendiliğinden oluşmayacaktır, sizin bu methodu oluşturarak kullanımınıza yönelik kodlar eklemeniz gerekir.

Elbetteki farklı kullanımlar için daha spesifik kodlar yazmanız mümkün fakat ben en temel haliyle bir kod paylaşıyorum sizinle. Bu kod Primary Key alanına göre arama işlemi yaparak ilgili satırı getiriyor.

public static Tablo find(TabloId tabloId, boolean update=false)
{
    Tablo tablo;
    ;

    tablo.selectForUpdate(update);

    if(tabloId)
    {
        select firstonly tablo
        where tablo.CarId==carId;
    }

    return tablo;
}

Kısa bir hatırlatma da yapmak istiyorum. Bu methodu formlarda oluşturma şansınız var fakat direk tablo nesnesinde oluşturmanız tavsiye edilir.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Retail Scheduler’da Toplu İş Tanımalama

Ekim 27, 11 Yazan: akın

Axapta’dan Pos’lara veya Poslardan Axapta’ya düzenli aralıklarla verilerin gidip gelmesi gerektiğini biliyoruz. Gerek raporlama olsun, gerek güncelleme olsun mutlaka arada belirli servisler ve onların rutin çalışmalarını sağlamak zorundasınızdır.

Axapta Retail Headquarter’da bu işi yapan modülün ismi Retail Scheduler’dır. Retail Scheduler, mağaza tümleştirme/birleştirme işlemleri, dağıtım listeleri ve planlayıcı işleri gibi bir takım hayati işlemleri yapmanızı sağlayan bir yapı sunar size. Bu yazıda ise belirli periyotlarla belirli jobları çalıştırması için “batch job” ayarlayacağız.

retail scheduler batch job oluşturma

Öncelikle Retail Scheduler > Scheduler Job formunu açarak resimdeki gibi toplu halde çalıştırmak istediğimiz işleri ctrl veya shift yardımıyla seçiyoruz. Daha sonra sağda yer alan Batch Job butonuna tıklayarak Create batch Job u seçiyoruz.

retail scheduler batch job toplu iş ayarları

Açılan pencereden ise batch job için başlangıç, bitiş tarihi; yineleme sayısı ve ismi gibi bilgileri giriyoruz. Günde bir kere çalıştırmak için başlangıç saatini ve tarihini ayarlıyorsunuz, bitiş tarihinin olmadığını belirten seçeneği seçiyorsunuz, günlük olduğunu belirten ayarları yapıyorsunuz. En son adımda ise isim veriyorsunuz. Resimde kırmızı kare içindekilere göz gezdirin. Kaydediyoruz.

basic batch job monitor toplu iş görüntüleme

Oluşturduğumuz toplu işi inceleyip, işlemler yapmak için ise Basic > Batch Job formunu kullanmalısınız. İşi çalıştırmak için sağ butonlardan Functions > Change Status formunu açarak Waiting hale getirmelisiniz. İşlerin son durumunu görmek için ise Functions > Refresh seçeneğini kullanmalısınız.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Retail Pos Epson OPOS ADK Problemi

Ekim 26, 11 Yazan: akın

Pos makinasına gerekli yazılımları sırasıyla yükledikten, ayarları yaptıktan ve Retail Pos’ da sıkıntısız açtıktan sonra hala printerdan fatura veya makbuz alamıyorsanız sorunu kendinizde aramayın. Microsoft’a göre hiçbir neden yokken baskı alınamıyorsa, Epson OPOS ADK’nın eski sürümlerini yükleyip deneyin. Geçenlerde bu tarz bir olayı tecrübe etmiştim. Bir problem yaşıyorsanız en azından denemenizde fayda var.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email] 

Retail Store Connect Ne İşe Yarar?

Ekim 25, 11 Yazan: akın

Microsoft Dynamics POS ile Axapta Headquarter arasındaki veri iletişimini sağlayan ve bunları loglayan servisin ismi Retail Store Connect’tir. Bu servis tahmin ettiğiniz üzere bir windows servisi olup çalıştığı sistemde belli başlı yetkilere sahip olmalıdır.

Genel topolojiye baktığımızda veri iletişiminde bulunacak olan her makinada bu servisin çalışması gerekmektedir. Bizim bu örneğimizde sadece iki iletişim noktası bulunuyor. Birincisi AOS server ve Retail Headquarter, diğeri ise mağazada bulunan kasa niteliğindeki Retail Pos makinası.

Axapta Retail Scheduler’da bir job çalıştırdığınız zaman, öncelikle AOS serverındaki Retail Store Connect servisi kendi üzerindeki veritabanında ilgili verileri ve şemaları çekerek bir paket oluşturur. Daha sonra bu paketi, pos terminali niteliğindeki makinanın Retail Store Connect servisine gönderir. Pos Terminali olarak görev yapan makinadaki Retail store Connect servisi ise gerekli işlemleri başlatır.

Bu iki iletişim noktasının arasında ise oluşturulan veri paketleri gidip gelecektir. Veri paketlerini incelemek isterseniz de yine Retail Store Connect Settings uygulamasından ilgili paketi xml dosyasına çeviren converterı kullanabilirsiniz. Aktarımda herhangi bir sorun oluştuğunda yapmanız gerekenlerden bir tanesi de gelen paketlerdeki tablo uyumluluğunun olup olmaması. Daha önceki tecrübelerimin bir tanesinde anlamsızca aldığım hatada, sorunun veri paketleri tarafından taşınan veriler ve tablo yapılarının mevcut Retail Pos veritabanındaki tablolarla uyumsuz olduğunu gördüm.

retail store connect service

Retail Store Connect servisi ile gelen paketler işleme alınmadan önce, Retail POS veritabanında bulunan mevcut tabloların içi temizlenir ve yeni veriler kaydedilmeye başlar. Çalıştırılan jobların akibetinin ne olduğunu öğrenmek istediğiniz de Retail Store Connect, çalıştığı makinada loglama amaçlı bir veritabanı tutmaktadır. O veritabanındaki tabloları inceleyerek daha fazla bilgi alabilirsiniz.

Bir sonraki yazımda Retail Store Connect kurulumu ve kurulum öncesi ne gibi gereksinimlere ihtiyaç duyar gibi konulara değinmeyi düşünüyorum.

[del.icio.us] [Facebook] [Fark] [Faves] [Furl] [Google] [MySpace] [MyWeb] [Newsvine] [Reddit] [Slashdot] [StumbleUpon] [Windows Live] [Yahoo!] [Email]