This is the 74th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 73rd Step, read it.
What is road to performance?
Most of us work in a code that has already been written, and also as we start writing code, because of time constraints or development easiness, we tend to add code which adds debt. Hence, we start to think about performance tuning the code. It’s really very hard to estimate how much time it takes to fine tune the system. Initially, we might estimate it for certain hours, which might end up taking as much…
This is the 73rd step towards gaining the Programming Enlightenment series. If you didn’t learn the 72nd Step, read it.
What is Singleton Pattern?
Singleton Pattern is one of the software design pattern mentioned in the Gang Of Four’s design patterns book.
This design pattern describes restricting the instantiation of a class to one “Single” instance.
Why use Singleton Pattern?
Singleton Pattern is useful when exactly one object is needed to be used as a global instance to coordinate across the system.
Why Singleton is anti-pattern?
This is the 72nd Step towards gaining the Programming Enlightenment series. If you didn’t learn the 71st Step, read it.
“To Reinvent the wheel is to duplicate a basic method that has already previously been created or optimized by others.” ~ Wiki
When we think we want to get intimate knowledge of the inner workings of various components that already exist. Many software components like memory management, double-linked lists, dynamic array, ODBC, multi-threading are like black boxes that just work. Understanding the usage of these components aren’t enough to reveal the hidden dangers and benefit beneath.
Reinventing the wheel, if…
This is Part II: Chapter 1of the Working Effectively With Legacy Code series. If you haven’t read the previous Part I: Chapter 5.
It Happens Someplace Every DayYour boss comes in. He says, “Clients are clamoring for this feature. Can we get it done today?”“I don’t know.”
You look around. Are there tests in place? No. You ask, “How bad do you need it?”You know that you can make the changes inline in all 10 places where you need to change things, and it will be done by 5:00. This is an emergency right? …
This is Chapter 5 of the Working Effectively With Legacy Code series. If you haven’t read the previous Chapter 4.
You need to know what tools you need when you work with legacy code. You need an editor or an IDE and your build system, but you also need a testing framework.
Refactoring by hand is fine but if the language you are working on has refactoring tools, then it is even more awesome to work with legacy code.
Refactoring(n): A change made to the internal structure of software to make it easier to understand and cheaper to modify without…
This is the 71st Step towards gaining the Programming Enlightenment series. If you didn’t learn the 70th Step, read it.
People write software with people for people. It’s people business. Unfortunately what is taught to programmers too often equips them very poorly to deal with people they work for and with.
Programmers build and use tools, we think about and create and modify and recreate tools. Tools are objects of interest to developers.
But for its users, a tool becomes an invisible thing understood only in use. For users tools only become objects of interest when they don’t work.
TL;DR…
This is the 70th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 69th Step, read it.
You’ve got to be willing to read other people’s code, then write your own, then have other people review your code ~ Bill Gates
We love writing code, but when it comes to reading it we usually hate it. Partly, because reading the code is hard while some are really bad code.
One way to improve programming skills is to Read Great Programs.
Why Read Code?
Reading someone else’s code can improve our own coding. Everyone’s thinking and problem-solving skills…
This is the 69th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 68th Step, read it.
To every problem we face, we need to focus to find the solution. Sometimes, enforcing focus to solve the problem at hand, might cause the focus to be lost. All of us suffer from this syndrome.
To break out of this syndrome, we get up stretch legs or walk or talk to yourself (aka rubber duck programming). And, automagically the solution pops out.
Why take breaks when doing creative work?
The human brain is divided into a logical part and…
This is the 68th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 67th Step, read it.
What is Version Control?
It is a component of Software Configuration Management which tracks the changes to documents or changes in the software code. Also, known as revision control or source control.
What are the different types of Version Control System?
The list of different VCS are:
This is the 67th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 66th Step, read it.
What is a Professional Programmer?
The single most important trait of a professional programmer is personal responsibility. This is to take responsibility for their careers, their estimates, their schedule commitments, their mistakes, and their workmanship.
What responsibility does a professional programmer have?
MyView androidView;