Git Cheat Sheet

  • Git is decentralized: every clone of a Git repository when in sync is an exact copy of the parent repository containing all of the history.
  • Setup a Git repository by creating a .git directory:
    $ git init [--bare -> without a working copy]
  • Stop the Git tracking and history by removing the .git directory.
  • If there is a file named .gitignore in the same directory as the .git directory, its contents (file paths) will be ignored by Git.
  • Workflow:
                 Git repository
                  /           \
                 /             \
                /               \
         changes in             staging
        the working   --------   area

    Continue reading “Git Cheat Sheet”

7 tips for software developers on how to get out of the rut and get back on the progress track

So, there you are… an experienced software developer, a seasoned professional,
a great person able to take responsibility in challenging projects,
all the while being a reliable and a cooperative team player.

Your coworkers enjoy working with you, you finish your tasks on time, you get paid what you agreed to…
All is well, all is nice.

Then, an old friend calls you up, saying “Hey, I just started learning this software development thing you’ve been doing for years.
Wow, it’s so amazing. I always thought it wasn’t something for me, but it turns out it’s insanely cool.”
And then you start remembering the times when you felt like that.
The first time you wrote “Hello World”. That was some powerful stuff.
And then just to showcase your dominance to the computer you wrote a loop and made it write it 10000 times.
And how about the time you gained the skill to write a program which can find out whether the number 198372102937 is a prime number or not?
If you can’t let the not knowing go, check out the answer here.

You remember! But you probably have to dig a bit in your memory to rediscover those feelings. The past few months, maybe years, there aren’t many of them.
The excitement turned into a routine. The constant learning and growth turned into endlessly repeated patterns. Welcome to the software developer’s RUT.
Things have become stale, you start to head to stagnation. It doesn’t mean you’re not growing anymore, but the pace is getting slower and slower.
Then your mind probably starts telling you: “Maybe this is not for me, maybe it was, but not anymore?”,
“Maybe if I change my project/job I’d feel more excited about what I do?”,
“What if I manage to make more money out of my work, that’ll motivate me to do more?”,
“Maybe I ought to direct myself to management and let the other developers do this work that’s becoming more and more tedious to do?”

Many people will actually believe these things to be true and will go for them.

If you feel like this, don’t worry or be ashamed. It’s completely natural to reach progress obstacles in everything you do in life.
It means what you’ve been doing so far really worked and you really progressed. Up until here.
Now it’s time to take a step back, analyze things, rethink your approach to software development, start adapting your work philosophy, modifying your everyday actions and hop onto the PROGRESS TRACK again.

Here are 7 unordered tips on where you can start:

Continue reading “7 tips for software developers on how to get out of the rut and get back on the progress track”

Cheat Sheet: Software Development Technologies

Ever wondered what is Java and what is JavaScript? Or what actually are back-end and front-end? Or what programming languages developers might use when developing mobile applications?

Well, I was recently asked to answer some of this kind of questions and explain this broad software development concepts a little bit more. Then, I remembered I’ve actually been asked a lot regarding this topic. Great, let’s make a cheat sheet for everyone 🙂

Continue reading “Cheat Sheet: Software Development Technologies”