kriwil logo

aldiantoro nugroho. @kriwil. indonesia. part-time programmer. full-time dreamer. elm. linux. ubuntu. python. django. vim. indiana pacers. manchester united. random.

  1. Firefox to remove Old Versions of TLS ·

    — – —
  2. GitHub annual game jam ·

    Everyone around the world is welcome to participate, from newbies to professional game developers—and your game can be as simple or complex as you want. It's a great excuse to learn a new technology, collaborate on something over the weekends with friends, or create a game for the first time!

    I've never created game before, even though that was my reason jumping in to programming. Could be very interesting.

    — – —
  3. PostgreSQL 11: What's New ·

    The latest and greatest release of PostgreSQL, v11, is due out later this week!

    — – —
  4. How I've Attracted The First 500 Paid Users For My SaaS That Costs $5/mo ·

    Again, you are a part of your product. Your blogposts have to be your story, not someone's. People read your articles, then they will be interested in you. Some my customers said they would like to support me rather than my product. Telling your story would increase your product value.

    Been following Inkdrop stories. A lot could be learned from him.

    — – —
  5. Football Manager 2019 ·

    Doesn't seem to have significant improvement. And no Linux version (yet?). The perfect time to stop buying the series.

    — – —
  6. Fascinating story from Google+ team ·

    If your team, say on Gmail or Android, was to integrate Google+'s features then your team would be awarded a 1.5-3x multiplier on top of your yearly bonus. Your bonus was already something like 15% of your salary.

    That's why it spread like a virus.

    And lot more gems in the thread.

    — – —
  7. AutoMono ·

    Programming font derived from Roboto Mono (with a hint of Monaco, SF Mono, Gotham & Futura)

    Looks good initially.

    — – —
  8. Pokemon Red in Minecraft ·

    This is a recreation of Pokémon Red in Vanilla Minecraft using only command blocks and a resource pack.

    First Pacman, now this. I wonder what's next.

    — – —
  9. Why Firebase sucks ·

    Downtime happens. In the case of Firebase, you might say that "uptime happens."

    Doesn't look good.

    — – —
  10. DIY WiFi Cam Tutorial ·

    One of these days, I'll try it.

    — – —
  11. Debugging Python Like a Boss ·

    Thankfully, there is a better way. Since the first segfault in C, a class of tools called debuggers have emerged with every language. Python is no exception, with a default one baked right in. There are also some cool ones developed by the community.

    If you feel "print debugging" isn't enough anymore, you might want to see other options available.

    — – —
  12. The Illustrated TLS Connection ·

    In this demonstration a client has connection to a server, negotiated a TLS 1.2 session, sent "ping", received "pong", and then terminated the session.

    Complete with detailed explanation of the data being sent and received.

    — – —
  13. Measure your tests coverage in Python ·

    Now you have tests in your project. But how can you be sure that the tests cover all the code (you need). It would be painful to find a bug because you didn't realize that part of code isn't tested yet.

    Coverage makes your tests useful. Do it.

    — – —
  14. Switch to Colemak for the sheer unholy joy of it ·

    Qwerty keys were not placed as a result of ergonomic considerations. Take the R key, for example. Colemak puts this on the home row. But in Qwerty it was moved to the top row. Why? To make it easier to peck out TYPEWRITER on a single row in sales demos by Remington reps. By accepting Qwerty, you are stuck in demo mode forever.

    He has the same opinion as I do. Switching to Colemak is fun!

    — – —
  15. Juno Progress for March ·

    As we steadily march towards Juno’s release (Ha! See what I did there?) new features are landing in our unstable daily builds on a regular basis. Juno is shaping up to be a great release for developers and other heavy keyboard users with the introduction of a few new tricks

    I've been using Elementary OS for more than a year now. I used to enjoy spending hours customize my Ubuntu look to my liking, but now I don't have time (or will) for that, so Elementary has served me well.

    — – —
  16. $169 development Chromebook ·

    Nearly every how-to and blog post I've found on "Chromebooks for developers" essentially starts with either: "Boot into Developer Mode" or "Install Debian/Ubuntu as the main OS". I'll just say it: This is bad advice. It would be akin to recommending that friends jailbreak their shiny new iPhone.

    The "right" to use chromebook for your development machine. It's definitely not all-purpose machine, but if it works, it works.

    — – —
  17. XDA Oblique ·

    XDA Oblique is a keyset inspired by the keycaps of the AEK, M0116, AEKII, and similar Apple keyboards.

    This is one beautiful keyset. I might have a reason to build another keyboard.

    — – —
  18. Dota2 vs League of Legends ·

    Both games have millions of active monthly players who play the game, but there is one clear winner. Dota 2 boasts around 13.5 million monthly active players as mentioned on their official blog statistics page. League of Legends on the other hand completely is definitely much more popular. From looking at the League player base, a few years ago the developers reported active monthly players of 67 million. Recently they announced LoL now gets over 100 million active players a month. That's a lot of players for an online game!

    TIL League of Legends player base is way bigger than Dota 2.

    — – —
  19. Colemak

    I've always wanted to type correctly. By that I mean touch-typing using 10 fingers and with finger on the right position. I got the touch-typing part nailed pretty good. The 10 fingers? Sort of. I'm pretty sure I'm using all my 10 fingers to type. Do I use it correctly? Now that's the concern. I don't think I do. And it's hard to change the habbit.

    I figured, if I wanted to change the habbit, I might as well learn new layout. Partly because I felt the muscle memory is easier to change if I learn new layout, partly because I just wanted it for the sake of it. I picked Colemak, because most of the GUI shortcuts (like ctrl+c, ctrl+v, you know, 2 most important shortcuts for progammer) stays on the same position (as in qwerty). So I changed my layout in OS level and started the journey. I put this image on my second monitor as cheatsheet. I also printed the image and put it next to my keyboard.

    colemak layout on hhkb

    I made a note about it on the first day, second day, and after a week. My firt day was on May 22, 2017.

    Day 1 was painful. My typing speed was probably 3-4 WPM. My second monitor was practically used to display the keyboard layout. Also, I had to switch between QWERTY and Colemak otherwise I won't be able to work at all.

    Day 2 was probably the same. My brain could figure out the key position, but my muscle couldn't. Could've been much better if I didn't switch back and forth. Alas, work needed to happen.

    Day 8. 22 WPM. That's an improvement. I realized something. A lot of shell commands I do come from muscle memory instead of remembering the command. So I kept hitting cd at the qwerty position. Also, I've been typing cd using the wrong finger the whole time.

    After that, the improvement is gradual. I think stopped switching back to qwerty after day 8. I was never a fast typer, so I don't really care about my WPM. Now, after more than 6 months, I feel I'm using my fingers correctly. Having an ortholinear split keyboard helps too, but that's another story for another time.

    So, answering the question you have, if you're using qwerty layout, should you learn new layout? The answer, IMO, is always no if you don't have any problem with it. If you have pain from moving you fingers, or you just want new challenge, go for it. It's fun.

    — – —
  20. Camel-case JSON Renderer for Django REST Framework

    Because I'm too lazy to create python package for this. Just use it.

    Django REST framework version: 3.5.x

    — – —
If you have any comment, tweet me @kriwil.