Ahmet Alp Balkan
  • Blog
  • About
  • Tweets
  • GitHub
  • Talks
  • My first Windows Phone 7 app: Colorify

    28 August 2011

    During my internship at Microsoft, I decided to create a Windows Phone 7 app in my spare times. The reasons I started this were to get familiar with C#, Silverlight and getting the idea behind Windows Phone 7 SDK, how it is designed and Microsoft’s approach to developing mobile apps from developers’ point of view. With this app I’m participating to #WPAppItUp contest organized by Windows Phone Team for students.

    The ironic point is Windows Phone 7 is NOT being sold in Turkey. The first time I have seen WP7 is when I came to Microsoft, because as you may guess, considerable amount of MS employees use WP7. Sadly, a student has no chance to develop apps for WP7 except using the emulator. This is terrible and still many students participate to contests like Imagine Cup with WP7 apps.

    # So, my app is: Colorify

    With Colorify you can choose or take pictures and then we make them black & white  for you and the you click on the screen to recolor specific parts of the image and then share it on your Facebook wall and Twitter. Similar apps exists on both Android and iPhone marketplaces, and that’s my first paid app, I’m selling it for $0.99 on Windows Phone Marketplace. There are a few screenshots below, you can find more on Marketplace page. Thanks to _Yenel _for mentoring during development of the app.

    [Download Colorify from Windows Phone Marketplace]

    Here’s a screencast of the app, thanks to Asli: Read more →

  • Internship at Microsoft: How is it like to work at Windows Azure?

    26 August 2011

    Finally, I decided to write a series of short blog posts about my internship at Redmond this summer, like I did last year. So this post will be covering only Windows Azure-specific topics. I hope you’ll get an idea about the company and may want to apply for jobs there.

    # What is Windows Azure? (boring part)

    Good question. Formal definition: Windows Azure is Microsoft’s PaaS/IaaS cloud computing platform offering that is used to build and host scalable applications, databases and storages on Microsoft datacenters. It has SQL Azure, Azure Storage Service and AppFabric. Windows Azure is the Operating System (OS) for this system. The whole thing is called “Azure Services”.

    Informal definition: It is like Google App Engine, but you’re deploying ASP.NET applications instead of Java, but you can access to your instance like Amazon EC2, it also has storage service offering like Amazon S3, but it is better and it also has a cloud relational-database like Amazon RDS. That means when you create an app, you can run it on 20 machines immediately. Everything is on the cloud, you have really less operations and migration costs. Read more →

  • Organizing an Intern Hackathon Day at Microsoft

    12 August 2011

    [caption id="" align=“alignright” width=“240” caption=“How a Facebook hackathon looks like”]The crew at last night’s facebook developers hackathon at Iridesco’s offices[/caption]

    I have always been so jealous of cool tech companies and startups (e.g. Facebook) that organize events in which many coders sit together and code their project ideas for all-day long or so– usually called hackathon.

    # Hack at Microsoft

    First you might think that Microsoft is a juggernaut company but usually that is not the case. Microsoft is a company full of hacker-spirited coders (maybe not as much as Facebook or Google) and there are many Microsoft employees do side projects in their spare times and sometimes they open-source these. In fact, Microsoft even has an internal group called The Garage organization that has “thousands” of members and organizes many social coding events that project ideas can find contributors and new projects are incubated there. It is not always coders but marketing and program manager guys are also interested in contributing these projects with their skills in their fields.

    This year I’m organizing an intern hackathon day which is going to be held at Microsoft campus starting 10pm today and will end tomorrow (Saturday) 10pm (24 hours!) with the help of The Garage. Read more →

  • How not to design a Social API

    02 August 2011

    I’m a 21 year old person and I really don’t know anything about how to design an API. In my internship last year, I was asked to prepare a presentation on How to Design Social APIs (in Turkish). Today, I look at that presentation and laugh very loudly, indeed. :) Unfortunately, some of my points were just too preconceived and mainstream. Since that, I learned a few things more on this topic and maybe now I can prepare another presentation, but I won’t, because next year I’ll notice that how lame is that presentation, again.

    Instead, I will show how not to manage a API design process for a social network, with a real life example of a multi-million dollar project.

    # Step 1. Be late, no hurries

    Take your time and release API at least 1 year after you launch the social network. Who would use your API anyway? You don’t need a developer platform, mobile apps and lovely hacks, right? This might be one of the certain reasons of your failure. There are many hackers out there waiting to use your APIs and do cool stuff and utilize your network. Think about a Twitter without Twitpic.

    # Step 2. Do not use standards

    Standards are for dummies. Dummy developers take advantage of standards just to write their apps easily. Don’t let them do this easily and make them read every damn line of your documentation.

    Invent your own standards! Because you’re smarter than everybody in IETF and you are a perfect architect to design new **authentication protocols **[ 1 ][ 2 ] (RFC 5849), **date-time formats **(RFC 3339) and even a new JSON standard (RFC 4627)

    Do not apply standards and engineering practices. They’re for lamers. Read more →

  • Real-world database design with Orman Framework

    24 July 2011

    Last week I have written a blog post on **Orman ** – a new lightweight Java Object-Relational Mapping Framework I’m coding. [hacker news story] Now I will demonstrate how easy is to design and create a database using only Java classes. Let the proof-of-concept begin!

    The scenario we will use is a very primitive airline company management system project I have from my Databases course this year, I will reuse it here even though it is very complicated for a simple app that Orman Framework is aimed for, but Orman can handle this.

    Requirements: Basic knowledge of Java and databases, how to add Orman framework to a Java project.

    # Step 1. Create your environment

    Create a new Java project, add orman.jar to your path, download SQLite binaries. Create a package to put your entity classes in them. Then let’s start to create entities.

    # Step 2. Create entities (boring part)

    Recommended read: Making your old Java classes Orman Entities Now we need to design our entity classes. I have an ER (entity-relationship) diagram that introduces how our database is going to be like from my course project. Just give 1 or 2 minutes and inspect it to understand rest of the tutorial:

    Read more →

  • Introducing ORMAN Framework

    15 July 2011

    It was a lonely Valentine’s Day for me this year, so I decided to code a framework to practice my SQL, Java, design patterns and Android skills I gained this year. I came up with the idea that coding a lightweight object relational mapper framework would be exciting! :P Then the hack has began and continued on my spare times. What I was trying to achieve a really small framework so that everyone can use databases in their programs and handle common database usages **without writing SQL **so that all the Java objects are can be saved to and queried from database.

    This is not a new idea if you are familiar with the concept already. This is called Object-Relational Mapping and there are hundreds of ORM tools including multi-million dollars projects use such as Entity Framework and Hibernate. As you might guess, those support almost all kinds of databases you might be familiar with and they are really cutting-edge software technologies.

    Read article: Why ORMAN is better than other ORMs for you?

    # Motivation

    It might seem so but I was not trying to reinvent the wheel.

    Features I wanted to imitate from other ORM tools:

    • Map every entity Java class to database table and every field to database column.

    • Tables will be created automatically using Java classes and their fields.

    • Developer will be able to use database in a few lines of code – without writing SQL!

    Read more →

  • Kullandığım Mac uygulamaları

    31 May 2011

    +Bir geliştirici olarak doğrusu Ubuntu’dan Mac’e geçerken büyük tedirginlikler içindeydim. Aynı rahatlık ve esnekliğin Mac’te olup olmadığı beni tedirgin ediyordu. Bir sonraki endişem ise uygulamaların yeterli olup olmadığı yönündeydi, fakat geçtikten sonra gördüm ki hiçbir şekilde uygulama eksikliği çekmedim. Birkaç arkadaşın tavsiyeleriyle güzel uygulamalara ulaştım ve bugün çok sık kullandığım ve faydasını gördüğüm uygulamaları paylaşayım dedim. Maksat liste yapmak olsun.

    Mac uygulamalarının en güzel yanı oldukça kararlı çalışmaları, çok güzel tasarımlara sahip ve kullanışlı olmaları. En kötü yanları ise güzel uygulamaların genelde ücretli olması. :) Read more →

  • Bu yaz Microsoft'tayım

    09 May 2011
    Bir aksilik olmazsa bu yaz stajımı Microsoft’un Seattle’daki genel merkezinde yapıyor olacağım. En çok istediğim takımlardan olan Windows Azure takımına software design engineer in test (SDET) olarak kabul edildim. Stajım Haziran başında başlıyor ve yaklaşık 3 ay sürecek. Bu da demek oluyor ki, Feragatname: Bu blogda yazılan fikirler sadece benimdir ve işverenime ait değildir. Disclaimer: The opinions posted here are my opinions and not those of my employer. Bugüne kadar üzerimde emeği geçmiş onlarca kişiye buradan teşekkürü borç bilirim. Read more →

  • Öğleden sonra hackathon ve bir Android uygulaması

    01 May 2011
    Cuma günü öğleden sonra dersim yoktu, uzun süredir yapmak istediğim Android mobil uygulamasını yapmak için fırsat kolluyordum ve Bilkent Starbucks’ta oturup 2 saatte çalışır hale getirip sonradan iyileştirmelerini yapıp markete koydum. **Hızlı Sözlük **uygulaması sayesinde uygulamayı açıp tek tuşa basarak aramak istediğiniz kelimeyi telefona konuşuyorsunuz ve o kelimeyi gidip Tureng İngilizce-Türkçe sözlük’te arıyor. Tureng’i tercih etme sebebim phrase dediğimiz İngilizce kelime gruplarını aramakta oldukça başarılı olmasıydı. Daha doğrusu bir kelimeyi aradığınızda bütün phrase’lerini birlikte getirebiliyor. Read more →

  • Bilgi Çağında Bilgi Saklamanın Sorumluluğu

    13 March 2011

    Küçüklüğümden beri ne zaman emek verilerek yazılan bir kağıt parçasının yakıldığını, yırtılıp atıldığını görsem içten içe üzülürüm. Bana göre milyarlarca insanın içinde bir insanın bile ürettiği her cümlenin bir değeri vardır. Ama gelin görün ki insanlar bilginin kutsallığının ve onu saklamanın sorumluluğunun bilincinde değiller.

    Konu internet’e gelince gözüme bu konuyla ilgili birkaç sorumsuzluk çarpıyor ve oturduğum yerden rahatsız oluyorum. Bu yüzden yazamadan duramadım. Mesele tamamen ahlaki değerlerle alakalı.

    # Kalıcı bağlantılara (linklere) saygı

    Gelişmiş ülkelerdeki gazetelerin internet sitelerinden bir haberin linkine 10 yıl sonra da girseniz habere ulaşabilirken Türk gazetelerinin neredeyse hiçbirinde bu mümkün değil. 2 senede bir tasarım ve adres şemasını baştan aşağı yenileyip kendilerini eğlendiren gazetelerimizin internet departmanları oysa ki akademik makalelerde, blog yazılarından referans gösterilen bağlantıları uçuruveriyorlar. Bir gördüğünüz haberi bir daha görmeniz mümkün olmayabiliyor. Bu nedenle sık kullanılanlarınıza eklemek çözüm değil. Sorumsuzluk gazetelerde (ve benzer şekilde diğer sitelerde). Read more →

  • ««
  • «
  • 16
  • 17
  • 18
  • 19
  • 20
  • »
  • »»

About the Author

I'm a software engineer at LinkedIn's Kubernetes-based compute infrastructure team. I enjoy building tools to orchestrate large-scale compute server fleets and love digging deep on Kubernetes and containers space. In my spare time, I maintain several tools in the Kubernetes open source ecosystem.

About me Other articles Follow on Bluesky Follow on 𝕏