My journey from paper note to paperless note

Posted on Sun 13 December 2015 in Developer • Tagged with notes, paprelessLeave a comment

paperless note on iPad

I really love to take notes wherever and wheneve. I like to keep my notes with me, but after buying iPad mini I decide to change my note tool from paper notes to paperless notes (e-notes), but I like to hand writing my notes I want something that feels like paper notes.

Searching for the tool

I thought of buying a stylus for iPad that feels like real pen and start taking notes, first I found fiftythree Pencil but it was built mainly for designers not for writing, then I found The best stylus for me is the Jot Script but it is expensive but it has the best writing experience and best accuracy. This is for the stylus, for the application I searched about note application that can enhance my writing accuracy, I found two note apps:

  • Penultimate Evernote

    • Free

    • Sync with Evernote

    • Zoom in and write with line recognition

  • Goodnotes

    • Paid (but worth every penny)

    • Backup with most of cloud storages like Google Driver, Dropbox, & OneDrive.

    • Pen size & color customization.

    • Palm rest and palm rejection.

    • Add annotations to PDF files.

    • Writing panel.

    • Shape recognition.

My final tools

Device: iPad mini with retina display.
Note App: Goodnotes.
Stylus: Moshi …

Continue reading Can Improve Your Problem Solving Skill

Posted on Mon 05 October 2015 in Developer • Tagged with codeing, skills, problem solvingLeave a comment

Codewars logo

Recently I posted that your daily job can kill your skills, and I mentioned specifically the problem solving skill, as a software developer problem solving skill is one of the most important and key skill you need to master to be a good developer, in the post I mentioned that I started to solve code puzzles on, it is good but during one of session the developer mentioned and I thought to give it a try, so I signed in and start to solve some puzzles aka katas and get higher in rank, and I discovered the differences and why is better from my perspective.

CodeWars advantages

In CodeWars you’ll start to solve puzzles (it’s called kata) from starting rank (easy katas) toward much harder ones and this is common in code puzzles website, but what is special about CodeWars:

  1. Check others solutions: After post your solution you can view others solutions, and this can really help you in crafting the skill, for example you solved one kata and after you checked others solutions, you discovered better solutions “WOW these guys solved it in very clean way", and now you …
Continue reading

Solo Developer

Posted on Wed 08 July 2015 in Developer • Tagged with developer, programmingLeave a comment

Developers and coders are known as anti-social but after many years in development field, I can tell you this is totally wrong and developers who can communicate well are good developers they can learn and understand what they are really doing, if you read soft skills books for developers, sure you will find chapter about communications and How to be a part of software development team, but if you can’t communicate with your teammate you’ll always work lonely and gain nothing more than loneliness and coding in the dark.

Since I joined the software industry 4+ years, and I’m working, coding, and developing alone, I read about pair programming in XP “eXtreme Programming” and daily standup meetings in SCRUM, and How it can increase the quality and productivity of teams, but I didn’t experience those, I never pair programming and never being in one of Agile methodologies, but I’m trying to think with someone else not in the same team and not a developer, but it worth trying because it’s really amazing, you’ll feel like you have two extra minds, yes as you read it, it is like 1 + 1 = 3.

If you …

Continue reading

Fictions for Developers

Posted on Thu 13 November 2014 in Developer • Tagged with developer, geekLeave a comment


Tim Ferriss recommended in his 4-Hours Workweek book to read fiction books before sleep and this will help you disconnected from the real world and jump in book world which lead to better sleep.

Last Monday I went to watch the Interstellar movie with my wife and it was like reading fiction book before sleep, the movie is 3 hours long which is unique nowadays and full of science and psychics, but the story is full of fiction and the soundtracks are incredible. After we finished the movie I looked at my watch and WOW 3 hours passed and I felt like I was inside the movie and flying in the space, the time passed by and all my inner thoughts, to do lists, project plans, pending households, and life events are vanished and I’m totally inside the movie, in other words I’m totally disconnected from the real world. I felt fresh even though that it’s 12:00 AM and I have a work to go in the morning, but I felt fresh and my mind is clear and this give me chance to start my day so fresh, plus now I want to read more about …

Continue reading

Run rabbit run

Posted on Thu 16 October 2014 in Developer • Tagged with dreams, lifeLeave a comment


Run rabbit run,  dig that hole forget the sun,  and when at last the work is done, don't sit down it's time to dig another one. #PinkFloyd

We keep running in the same freakin loop/circle & forget pursuiting/catch our dreams and goals, and just stick to little small useless life events.

Sometimes we invent things to take them as excuses like money, time, children, place, or company. Manage yourself and take guidance from Allah, fix your issues aka & "excuses" , have a dream no no have a lot of dreams and live your life to catch the and make them true.

Ask yourself every morning, Am I like what I'm doing? If no please quit it and go live your life and search about what you are like to do and start living it, one day shorter breathe and here come the death

Continue reading

Generate POCO for Database Tables Using T4 Template

Posted on Mon 12 May 2014 in Developer • Tagged with poco, t4, dotNET, C#Leave a comment

If you are using Micro-ORM which doesn’t have fancy UI that generate your data model for you, or you want a free tool to generate POCO classes for you, I’ve got a solution for you. Personally I prefer using T4 template that PetaPoco provides, so let’s see how you can use it.

Let’s Start:

First, install/add PetaPoco to your project using Nuget:

1.  Open **Package Manager Console** and type `install-package petapoco`
2.  Wait until package downloaded and installed to your project.



Second, modify T4 template to generate POCO classes for you:

  1. Open file and modify Settings part.
  2. In ConnectionStringName write your database connection string name which located in app.config or web.config.
  3. In Namespace write the namespace for generated Poco classes.
  4. In RepoName write Repository name, this is optional and recommended if you’ll use PetaPoco.
  5. In ClassPerfex write required class name prefix, this is optional.
  6. In ClassSuffix write required class name suffix, this is optional.
  7. Save the file.


Third, congratulation your POCO classes and Repo generated under –> Database.cs.



  • Make sure you set providerName in ConnectString or T4 template will not work.
  • If you faced C# issue during …
Continue reading

.NET Developer Comfort Zone

Posted on Mon 17 March 2014 in developer • Tagged with developer, development, dotNetLeave a comment


I’m a .NET developer and to be specific I’m a web developer who use .NET framework and .NET stack to create web application (Web App), and nowadays I’m learning ASP.NET MVC to move from WebForms world to MVC world, but in future I’m planning to get out of my comfort zone again and get out of .NET world and try the open source software (OSS) world, I’ve attended many sessions for GDG Kuwait which is Google Developers Group located in Kuwait and the only developer group in here with .NET/C# experience and it’s full of enthusiasm developers.

When I will take this leap/paradigm shift I will take it for real, let me explain what I mean by that. What I’m planning is learning Ruby on Rails, maybe you want to learn Django or Node.js but when you will, please don’t try to stick to Microsoft world, don’t be afraid to get out of your comfort zone, please don’t use Node.js tools for Visual Studio, or Python tools for Visual Studio, or Ruby In Steel Developer these Frameworks works great with Linux operating systems so learn …

Continue reading

When Old Technology/Framework Dies?

Posted on Tue 11 February 2014 in DeveloperLeave a comment


I was wondering when old framework dies? it’s matter of time or matter of usage? let’s talk first about what are things make me wonder?

Sage CRM

Last week I’ve got my hand dirty with Sage CRM and I was completely shocked when I found it’s built using Classic ASP. I had WTF moment and asked myself Is this thing still alive? WOW it’s 13 years old Why Sage? Why this very old technology? What I’m always heard about Classic ASP is crap and thank god for modern web frameworks. Is it expensive to upgrade the technology used in your application so that Sage is released 7 versions of it’s CRM built using Classic ASP? When Sage will invest to start use new framework like ASP.NET MVC or even go to another part of the world (world of open-source frameworks) and use something like Ruby on Rails or Django?

Microsoft SharePoint

The Microsoft golden boy is build using ASP.NET WebForms, yes I know ASP.NET framework isn’t old framework  but still Microsoft released ASP.NET MVC v1.0 in 13 March 2009 so it’s near 6 years old, and …

Continue reading

To Google Or Not To Google?

Posted on Tue 27 August 2013 in Developer • Tagged with developer, development, programmer, programmingLeave a comment


To Google or not to Google? this is not even a question, Scott Hanselman wrote an article about Googler Developers or search engine developer I found it very interesting because he’s talking about developers whom using Google to search for a solution and copy and paste it. Irony some developers aren’t able to Google the solution as well, I always believe that understand what is the problem is its half solution.

“The formulation of the problem is often more essential than its solution, which may be merely a matter of mathematical or experimental skill.”

― Albert Einstein

Then understand what is the problem is a skill that some developers missing it, even Oren Eini wrote about some developers in interview have full internet access and can’t even solve their problems.

AM I Googler Developer or not?

Sure I am, I Google about the solution online, actually most if not all of my technical resources are online Google, Stack Overflow, GitHub, MSDN, online documentations, my blog, other developers blogs, etc.., but what I’m doing is not just search for a code to copy and paste it in order get things done, absolutely not I’m search for a …

Continue reading

How do I learn?

Posted on Sat 20 April 2013 in Developer • Tagged with carftsmanship, coder, developer, learn, programmerLeave a comment

abraham lincoln qoute

I’ve got many questions from young developers who want to learn programming and be professionals, I thought of writing this article to give them a glance about how I learn software stuff. I want to tell you I’m still learning and I’ll always pursuit knowledge and being professional software craftsman, and you should consider the same, believe me if you stop learning, you’ll become outdated in this field, and you’ll suck, I met developers with big fat years of experience but they are outdated since 5 years and they can’t go with new technologies anymore, ask any doctor or lawyer and he’ll tell you this craft is about leaning and learning and gaining knowledge.

Learning development is separated into two parts:

  1. Dealing with human.
  2. Dealing with computer.

Dealing with human

Dealing with human like dealing with client, don’t tell me I just want to code dude, no sometime if not all of the time you have to deal with the clients, think of it as you have your own company you’re entrepreneur now, Do you want to write code only? or you want to create success product by gathering the right …

Continue reading