- Ghost doesn’t offer any server features, but runs one.
- Ghost wasn’t fast enough.
- Unnecessary Server costs.
- To much Maintenance.
This part of the series explains the basic building block that allow writing concurrent programs in python.
Later in the series I’ll show how to use different async paradigms using the new async syntax that was (finally) introduced in Python 3.5.
7 months ago I made a new years resolution to master vim: The Road to Mastering Vim.
I’m not a master just yet, it’s going to take a few years. After 7 months of exclusively editing text & code with vim, I can honestly say that I’m feeling at home and I can’t go back.
A few days ago I told the world that I’m moving to Cybereason. I didn’t say that I’m going as hard core as it gets - joining the team that develops the agent on Linux endpoints.
Today I needed to add a few features to an existing .NET Core application. I’m running Fedora 25, but that shouldn’t be an issue, right? because -
It appears that it doesn’t love Fedora 25, because it’s still not officially supported. Instead of hacking around and trying to get this thing working, and wasting my whole day doing so, I thought - why not use Docker?
The blog post is split into four parts:
I really like docker’s names generator. It makes remembering id’s easier, and as of version 0.7.x, it generates names from notable scientists and hackers, which gives it an extra bonus!
There are a number of ports out there (shamrin/namesgenerator for example), but all of them just copy-and-paste the names, which is not cool at all.
I decided to parse names-generator.go and extract the names from it, thus making sure it’s always up to date.
I wrote two implementations, one in python and one in go.
^ The hyperlinks lead to the relevant section in the blog post.
The amount of lines needed to do all that work is relatively short, which shows how powerful these languages are.
A few days ago one of our (Gartner Innovation Center) productions servers died as a result of a log file that wasn’t properly rotated. This might sound like an easy problem to figure out and fix, but the situation was a bit more complex!
This blog post walks through all the steps we took to investigate and fix the issue. I find it extremely interesting & hope you would too!
I just read a post on reddit titled: “Accidentally destroyed production database on first day of a job, and was told to leave, on top of this I was told by the CTO that they need to get legal involved, how screwed am I?“
I’m completely pissed! The guy made an honest mistake that can happen to anyone, and gets fired!
I’ve been asked by a few people recently to explain the different uses for the
else keyword in python.
python, for a reasons I do not understand, decided to overload the
else keyword in ways most people never think of.
The spec isn’t too friendly to beginners either. This is a partial piece of the python grammar specification, for symbols that accept the
else keyword, as it is read by the parser generator and used to parse Python source files:
That’s kind of cryptic, right?
This blog post is primarily aimed at beginners, and covers:
The post has no ordering. You can pick-n-choose the ones you’re not familiar with.
One of pythons strongest built-in data type is the dictionary. You can find it everywhere - from a simple key-value store, to a piece of a complex data structure, and all the way down to one of the basic building block of python’s attribute access mechanism.
It’s probably one of the most important data structures in python, and as such, one needs to understand it.