Blogs / Personal blogs

Peteris Krumins

catonmat.net

catonmat.net

Popular posts
57
Total points
9,150
HN comments
3,576
Rank
#90 personal

Visit catonmat.net → RSS feedOn Hacker News May 2008 – Nov 2024

Software Engineering 42Tools & Productivity 18Math & Algorithms 9Web & Frontend 7Systems & Performance 7Startups 5

31

Introduction to sed

sed book This is the world's best introduction to sed - the superman of UNIX stream editing. Originally I wrote this introduction for my second e-book, however later I decided to make it a part of the free e-book preview and republish it here as this article. Introduction to sed Mastering sed can be reduced to...

34

Top Inventions at Browserling

Today is 4 years since I and my co-founder James Halliday have been working at Browserling Inc. I thought I'd share what I think are the top 10 inventions at our company. The first two choices are obvious. They're our products Browserling and Testling. The next eight choices are useful and popular open source…

38

I was interviewed by Fog Creek

I just had my minute of fame! I was just interviewed by Fog Creek on their development blog. Fog Creek is Joel Spolsky's company. We talked about how I got into software development, what I currently do, my current setup and my favorite books. I've been a lifetime fan of Fog Creek Software and it just feels so great…

41

My Job Interview at Google

A while ago I had an on-site job interview at Google. The position I was interviewing for was a Google SRE. SRE stands for Site Reliability Engineering. Site reliability engineers (SREs) are both software engineers and systems administrators, responsible for Google's production services end-to-end. I interviewed…

42

Secret Perl Operators

I love Perl because of its expressiveness. You can write incredible code and it feels just so natural compared to other languages. Here are 8 secret Perl operators that I often use. Only one of them is a real operator (first one). The others are syntactic tricks that make them look like operators but they are not…

43

Arbitrary code execution via ldd utility

The `ldd` utility is more vulnerable than you think. It's frequently used by programmers and system administrators to determine the dynamic library dependencies of executables. Sounds pretty innocent, right? Wrong! In this article I am going to show you how to create an executable that runs arbitrary code if it's...

47

Follow Hacker News from the Console

Here is something neat that I hacked together – a `top' like Python program called Hacker Top that allows you to follow Hacker News from a UNIX terminal! Hacker News has become the 2nd source for news after programming.reddit for me. I have a couple of ideas for a startup myself and the tips I get from Hacker News...

48

The Busy Beaver Problem

Busy Beaver puts another one on the Turing Machine's tape (image from the book The New Turing Omnibus). The busy beaver problem is a fun theoretical computer science problem. Intuitively, the problem is to find the smallest program that outputs as many data as possible and eventually halts. More formally it goes…

49

Python Library for Google Translate

I have extended my xgoogle library with a Python module for Google Translate. The new module is called "xgoogle.translate" and it implements two classes - "Translator" and "LanguageDetector". The "Translator" class can be used to translate text. It provides a function called "translate" that takes three arguments -...

51

Code Reuse in Google Chrome Browser

As everyone already knows, Google released a new open-source web browser called Chrome. Having interest in code reuse, I downloaded the source code and examined all the open-source libraries used. Google Chrome browser shows excellent example of code reuse. I found that they use at least 25 different software...

52

Bithacks.h - bit hack macros

A part of being a great programmer is having your personal code library. With a personal code library I mean a repository of code that you have an intimate knowledge of and that you can reuse quickly. If you are a C programmer, you don't want to reimplement linked lists, trees, various utility functions, macros and...

54

JavaScript: The Good Parts

I found a really nice video lecture on JavaScript. I'm a JavaScript journeyman myself so I decided to review it to learn something new. I have written about JavaScript in the past -- the previous post on JavaScript was "Learning JavaScript through Video Lectures". This lecture is given by JavaScript guru Doug...

55

Why Vim uses hjkl keys as arrow keys

I was reading about vim the other day and found out why it used `hjkl` keys as arrow keys. When Bill Joy created the vi text editor he used the ADM-3A terminal, which had the arrows on hjkl keys. Naturally he reused the same keys and the rest is history. Here is how the `hjkl` keys looked. ADM-3A keyboard's hjkl…