Create awesome art with a few lines of Python code.
Who needs Mr Robot when you have an Atari Portfolio and some rudimentary code to hack into ATMs?
Bertrand Fan is an engineer for Slack but in his spare time, he does cool stuff with old tech like Slack on a SNES or using Microsoft Cognitive Services to create baby bump timelapses. But this one is pretty cool.
It involves the scene from Terminator 2 where John Connor used an Atari Portfolio to hack an ATM and steal money. While Bertrand didn’t reverse engineer an Atari Portfolio to do exactly that, he did emulate what we, the viewers, so on the LCD display using Python.
And then he ported the code to Pascal. By the end, he concluded the post with this:
In the spirit of owning less stuff, I’ve gone through the mental exercise of what it would take to make the rest of this a reality but will not follow through on any of it:
1. Buy an Atari Portfolio on Ebay.
2. Buy an Atari Portfolio parallel interface and probably a new screen bezel because it’s likely scratched.
3. Find a parallel cable in my box of cables.
4. Find a PC or laptop with a parallel port, install MS-DOS v6.22 on it.
5. Download FT.COM and put it on the PC.
6. Build the EXE in Dosbox-X and transfer it to the Atari Portfolio.
7. Steal a debit card.
8. Wrap part of the card in aluminum foil, buy an Atari Portfolio serial interface, run a cable to the card.
9. Run the program.
10. Easy money!
Need some coding inspo? Check out these YouTube channels curated by Dev&Gear featuring Colt Steele, Chris Coyier, and Ania Kubów.
When I’m invested in a subject, one of the first things I do is scour the Internet for books, tutorials, and YouTube videos about it. They help me learn, gain insights from other people’s experiences and shape mine. So I was super stoked to find this “ultimate list of YouTube channels to boost your web development and programming skills” by Dev&Gear.
I won’t copy the full list of 89 channels (it’s bad blogging etiquette) but I will list some of the channels and people I’m already subscribed to or I’m otherwise familiar with:
- Chris Coyier (I follow CSS Tricks on Feedly)
- Colt Steele (I’m doing his Python course on Udemy)
- Steve Schoger (also featured on the site)
What YouTube channels do you follow for web dev knowledge? Let us know in the comments.
Want to learn how to code in Python? Here are 7 things I learnt from learning it for anyone looking to start.
But Python was different.
It hasn’t been plain sailing throughout but I learnt to weather proverbial storms quicker than I expected. For anyone wanting to take up the language, these are the 7 things I learnt from learning Python.
1. It’s easy to learn if you focus on the basics
The reason I started learning Python was:
- It was appropriate for my line of work (search engine optimisation or SEO for short)
- I had serious FOMO
But with that FOMO came a sense of inadequacy. Other people who were better than me and doing advanced stuff while I was learning about for loops and if statements. At one point, I “skipped ahead” and got lost in a sea of code I didn’t understand, which was frustrating.
Then I realised this was sub-optimal—I had to stick to my course, the basics I was learning, and nothing else. That helped me get through the course much faster (I’m still doing it but I’m not lagging behind like I was before).
2. It’s versatile
The more you learn Python, the more you’ll find use cases in everyday life. From choosing what to eat for breakfast to picking a random movie to watch within a given running time limit, there are so many things you can do with Python.
Having those kinds of projects in mind motivated me to keep going and put my theory into practice. As an SEO, I’ve been able to use Python extensively but I’ve also used it for my hobbies and for coming up with ideas to write about on this blog.
3. It’s scalable
“Vanilla” Python has its faults—namely with multithreading—but with the right add ons, libraries, and compilers, these issues reduce and scalability becomes a possibility. But if you’re really serious about large scale projects, you’d likely consider a language like C/C++ anyway.
In terms of the development time it would take to learn and execute, Python excels and its scalability wins out.
4. It’s free* to learn
Now, I’ve put an asterisk next to free because not everyone has access to technology in order to learn programming languages. But for those who do, it doesn’t require hundreds of pounds worth of books and academic courses. Free courses are available online, or you could pay for premium options like Codecademy and Udemy.
5. It’s the perfect language to add to your CV
Everyone and their dogs says you should learn to code.
Use this lockdown time to code!
Societal pressure aside, if you do choose to learn a programming language for professional purposes, Python is a great choice.
By adding your proficiency to your CV, it can become a conversation starter in interviews and may give you the edge, especially in areas where coding is a rare skill.
6. There are multiple ways to learn
Python’s learnability is an extension of its versatility. While nothing beats getting down and dirty with the code, that’s not the only way to learn. You can follow a course, read your way through, or watch code live on Twitch (like Tae’lur Alexis).
7. It teaches you about AI
Artificial intelligence appears scary thanks to the media, and there are some heinous uses, but AI is as “evil” as the people and inputted data involved with it.
There are advantages to that. To know the problem, you have to face it and Python gives the best entry into AI and machine learning. Then you can learn about the biases within AI and how to tackle it (if you’re so inclined). Or you can use machine learning to make life tasks more manageable without oppressing millions of people in the process.
- Automate the Boring Stuff with Python – an awesome book that walks through examples of tasks that Python can automate.
- Python Weekly is a free weekly roundup of the latest Python news. I’m subscribed to it and I love it.
- Tackling Python: How It Can Help With Technical SEO – for any SEO’s out there, Ruth Everett is a major inspiration to me and the main reason I took up Python in the first place.
- 100 Python Code Snippets for Everyday Problems – a great collection of Python code examples showing the quirks and efficiencies of different features.
- Pandas Cheat Sheet — Python for Data Science – Pandas is a great data library, similar to how Excel and Google Sheets works in that you can create dataframes to store, analyse, and manipulate your data.
- Jupyter Notebook – An open-source virtual environment to use Python. Great for sharing code without cluttering up your computer with multiple files.
- Google Colab – Google’s version of the above, offering Colab notebooks where you can combine code and rich text in a single document.
Tae’lur Alexis has been studying Python on Twitch for the last few months and you can watch her live 6 times a week.
I’ve been studying Python for the past months (and documenting my journey on Twitter with the hashtag #LukeLearnsPython). Another blerd who has taken up the programming language is self-taught front end developer, content creator and speaker, Tae’lur Alexis.
While I’m not a dev, I saw some parallels in our respective coding/tech journey. Last month, Tae’lur wrote an article on her website about how she got her first dev job without a formal qualification. She discussed her background, having grown up on the west coast of America:
Without diving too deep into my background, I am 23 years old and was born and raised in Southern California. I’m the first in my family to graduate high school. I dropped out of college my freshman year and ended up without direction or a sense of purpose. I started working as a cashier at places like Macys and Kohls. I felt like an embarrassment, not because I was working retail but because people around me had set expectations for me to be an overachieving college student. I didn’t have a passion for years.An excerpt from Tae’lur’s post, How I Landed My First Web Developer Role Without A Degree or Bootcamp: Lessons Learned, Resources & Tips
I am seeking to better myself as an engineer, the languages I choose to explore and learn aren’t really important. What I do like about Python is that the syntax is very human-like and simplistic which makes learning a bit more enjoyable.An excerpt from Tae’lur’s Twitch bio
I wholeheartedly agree about Python’s logical and simplistic syntax and that helped me get into the language too.
Tae’lur learns using one of Codecademy’s many Python courses and livestreams her coding exercises. Her reason for this is so viewers can “ultimately see her struggle as she understands concepts and sees how her brain works and how she is able to process information, as that may help others as well.”
What I like the most about her Twitch streams is they feel like community gatherings. She learns out loud, which can be a scary thing to do for most people, and viewers (including myself) chip in with help where necessary, without making the learning process about them. It’s also very comforting to listen to thanks to the most relaxing beats she plays in the background, and for the fact that it’s a black female developer, a demographic often overlooked.
But her coding journey doesn’t end there. Tae’lur also plans to learn Go and C/C++ in the future, both important and interesting languages for the present and future of tech. I look forward to watching those livestreams when they happen.
Tae’lur’s Twitch schedule
- Sunday: Off
- Monday: 3pm EST – 7pm
- Tuesday: 3pm EST – 7pm
- Wednesday: Off
- Thursday: 3pm EST – 7 pm
- Friday: 3pm EST – 7pm
- Saturday: 3pm EST – 7pm
With Python, Twilio, Flash, and Dropbox, you can create a chatbot to save your mum/mom’s phone storage and back her photos in a safe place.
My mum has gone through a phones in the last few years. Not because they don’t work necessarily but because the storage hasn’t been enough and making the transition from a burner to a smartphone.
There was also a RAM issue, as a lot of low-entry smartphones come with bloatware and it’s a nightmare to get rid of if you can’t root them. On top of all that, WhatsApp photos were taking up most of the space on her phone.
Well, that doesn’t seem like an isolated issue as Ana Paula Gomes wrote a handy guide to saving her mom’s pictures using Python, Flask, Dropbox and Twilio.
In it, she goes through the process of creating a WhatsApp chatbot that backs up her mother’s images with the help of a few APIs and the Flask framework for Python.
What is Twilio?
Twilio is a cloud comms platform that lets developers make and receive phone calls, send and receive text messages, and perform other communication functions using web APIs.
To create the chatbot, you’ll need:
- Python 3.6 or newer
- A smartphone with an active phone number
- WhatsApp (obviously)
- A Twilio account
- A Dropbox account
- Someone who can program it all – unless that’s you’re mum in which case she’d have already found a solution this by now and she’d be even more awesome than usual cos she’s your mum anyway
It might seem like overkill for some, since WhatsApp allows you to backup your data with a Google account but this is the cooler solution. Plus, for anyone learning Python, this is a very practical way of doing it. And you’re helping a parent. Instant brownie points for you!
(Btw, this isn’t sponsored or endorsed by Twilio. I just love Python and my mum.)
Programming is great but have you learnt how to code in Python while listening to ASMR?
Programming is great but have you learnt how to code in Python while listening to ASMR?
I like coding. I even studied Computer Science in 2008 at Nottingham Trent University. But I only lasted 6 months before dropping out. Why? It wasn’t what I expected at all. I struggled to get into group work and there was a lot of project management which tipped me over the edge.
Coding wise, I had to learn C++. In itself, it wasn’t a problem but it just reminds me of some bad times. And it was a far cry from my experiences with HTML, which isn’t even a programming language (it’s a markup language – look it up) Ugh.
Fast forward 11 years and I work in search engine optimisation. That means engaging with a lot of code. But recently, I started learning how to code in Python.
So far so good but what if you could learn how to code with ASMR? That’s exactly what Zen ASMR has done with their Typing & Soft/Whisper series.
What is ASMR?
ASMR stands for “autonomous sensory meridian response” and it describes a tingling sensation you can get over your body from certain stimuli such as:
- Soft, repetitive sounds
- Mouth sounds like crunching, chewing, or biting food
- Receiving personal attention
- Tapping or stroking objects, with fingertips or fingernails
- Playing with soft objects like feathers
It’s a phenomenon that has produced over 13 million ASMR videos on YouTube, according to a recent University of Sheffield study. It can help to people to deal with mental health conditions such as depression and anxiety (I can attest to that as it helps me with both) as well as physical benefits such as decreasing heart rates and aiding sleep.
Who is Zen ASMR?
Zen ASMR is a YouTube channel whose videos “bring you relaxation and calmness”. Videos feature everything from Minecraft playthroughs to reading and playing with Lego.
ASMR is perfect for learning how to code in Python
Learning anything new can be stressful. That’s why mixing sensory stimuli like softly spoken voices to explain technical information can help it sink in. It beats a boring hour-long lecture.
The video isn’t necessarily for beginners and it won’t replace a well-structured course on Python but anyone wanting to get a gist of the language would do well to give this a watch.
Python is a versatile programming language
The video is from 2015 and things have changed for Python since then. As of 1st January 2020, Python 3 will only be supported and Python 2 will be put to pasture (so to speak).
Python is used by the likes of Google, Facebook, CERN, and NASA for disciplines like AI and machine learning. This is thanks to its object-oriented approach and versatility for a wide range of projects. It also features heavily in information security which is a major industry worth over $114bn.
Want to know more about how to code in Python?
There is a wide range of online courses you can get into for coding in Python including:
You can’t say no to a free course, right?
(shout out to @TartanLlama for the inspiration)
Using a Raspberry Pi Zero, Stephen Coyle built a media player that would play random episodes of The Simpsons one at a time.
To save space and quality, you might want to limit the episodes up to Season 12.
I used to watch The Simpsons every weeknight at 6 on BBC2 before it moved to Channel 4. Then I stopped because they showed new episodes and they sucked. Not a day goes by where I don’t quote it and I’ve owned the obsession now; it’s part of my personality. So this kind of project piqued my interest.
Using a Raspberry Pi Zero, Stephen Coyle built a media player that would play random episodes of The Simpsons one at a time. This works because they’re pretty random anyway so you won’t miss anything by flicking between seasons (except the one where Mr Burns is shot).
The hardware has a yellow button that queues up a new episode. For the software, it uses a Python script. And has for what episodes he has included with his? Stephen said the following:
I’m sure it’s debatable, but I’ve included seasons 2-10. After ten it declines precipitously in quality in my opinion… But I reluctantly permit the use of my code on later episodes.
Even stricter than me. He clearly knows his stuff. Head to the Stephen Coyle’s website to find out how it’s made.
No one messes with Engineer Man and he showed a scammer who was boss with his nifty coding skills.
It started with a text message that led to a web form. But Engineer Man knew better than to fall for such a scam. Rather than leave it there, he decided to teach the scammer a lesson. He set up a Python script to bombard the scammer with fake email addresses and passwords so they’d have no choice but to shut up shop. A small victory.
Stream it below and admire Engineer Man’s coding agility.