Introduction to the Python Debugger Tool

In this video demonstration, I’ll show you how to get started with the Python Debugger tool.

The Python Debugger (PDB) is an incredibly useful tool which can save you hours when writing Python applications.

This tool has replaced my former debugging process – which was laborious and not at all efficient. I use it whenever I’m debugging my code or troubleshooting issues.

Here are the links you’ll need to follow along:

demo-json-printer project: https://github.com/LondonAppDev/demo-json-printer

Python Debugger Official Docs: https://docs.python.org/3/library/pdb.html

Favourite Atom Extensions

Atom is my favourite text editor.

It is fast, lightweight, cross platform and free.

But most importantly, it has a great community of amazing developers who contribute plugins.

Here is a list of the Atom editor plugins that I found the most useful.

1. File Icons

When a colleague told me about this extension it completely transformed my editor. Out of the box Atom comes with a standard document icon for each file. Add some colour to your tree view with the file-icons extension.

Atom File Icons Extension Screenshot

Make your tree-view sparkle with a proper file icon per file.

2. Minimap

The minimap is a great little add on that really makes a huge difference. It gives you an approximate outline of the code while making the scrollbar larger and easier to grab.

Screenshot of Atom minimap

Install the Minimap extension for the ultimate scrolling experience.

3. Linter Pycode Style

Be notified of crappy code before you publish it with the linter-pycodestyle extension.

Screenshot of Atom Python Linter

This has saved me from embarrassing coding mistakes many times. The example below will install the Python version, but it’s available for many different languages.

4. Pretty JSON

We’ve all had to inspect a minified JSON at one point in our coding career. Un-minify that JSON with pretty-json.

Python Pretty JSON

This one has saved me many times.

5. Launch from Terminal

This one is not an extension but, it’s a really useful feature of Atom none the less.

Screenshot of Terminal Launch

Launch Atom in the location you are currently working on in your terminal window by typing:

So, those are the most useful extensions I use in Atom.

I’d love to hear your favourites in the comments below!

My experience with Dell Support (Dell Hell 2.0)

As a software engineer, the most important tool you will ever need for your job is your computer.

In January 2015 I decided it was time to get a new laptop.

I was currently using an Acer Aspire V3-571 which lasted me a good year (which was impressive considering it only cost about £500) but eventually it started to slow down and became difficult to work with.

I decided it was time to invest in a professional grade laptop with good support. I wanted something that was lightweight, powerful and reliable.

I spent a considerable amount of time researching the different products on the market and finally landed on the Dell XPS 15. Here’s why:

Read more

10 Productivity Hacks for Developers

How can you be a more productive developer? That’s the million dollar question.

As a professional developer, one of the most difficult challenges you are faced with is being able to stay focused on tedious lines of code for hours at a time. Whether you’re programming professionally or just fun, you probably have goals you want to achieve, and staying focused is key to achieving them.

I always had trouble staying focused, so over the years I figured out a number of techniques or hacks that have since helped me become a lot more productive.

Although I haven’t found a way (yet) to meticulously measure this – my guess is that, when implemented, these hacks increase my productivity by 100-200%.

Read more

Excellent Command Prompt Alternative

My good friend Alireza recently sent me a link to an alternative command prompt application for Windows called Cmder. When I first clicked the link, my initial thought was “this looks nice, but is it really worth installing a whole application just for a nicer looking command prompt window?”. I quickly dismissed it and carried on with my coding.

A couple of weeks later I receive an email from the MongoDB University. It was a notification that the course I had enrolled in a few weeks back (MongoDB for Python Developers), was available for me to start.

Being the type of person who likes to get things done early, I click the link and begin the course. After a few video lectures in, I have already installed the enterprise NoSQL database server on my local machine. Before I know it, I am busy bashing commands into a Microsoft Windows 8.1 Command Prompt dialog, adding and searching for JSON objects containing information about peoples names and their favorite fruits. After about an hour of squinting at the screen trying to establish if I had typed a regular or curly bracket, I remember the link my friend had previously sent me: http://gooseberrycreative.com/cmder/

Screenshot of a regular and  curly bracket in Command Prompt highlighting how similar they look

After installing Cmder and running it for the first time, I quickly saw the value in having a “nicer looking command prompt window” which I had previously overlooked. I am immediately in awe of the crystal clear clarity between any type of bracket you could possibly find on an English (United Kingdom) keyboard.

Unbelievably, it doesn’t just look great, it comes equipped with some great built in features too, such as:

  • Build in SSH Client
  • Ability to SCP files
  • Git version control system
  • Other useful tools commonly found on Linux machines such as: wget, curl, ls

I am now hooked on this awesome tool, and highly recommend it to anyone looking for a replacement of the oppressive, unattractive Windows Command Prompt window.

Windows Command Prompt alongside commander

Thanks for reading, and I have you have as much fund with Cmder as I have.