Profile cover photo
Profile photo
Sudaraka Wijesinghe (suda)
සුදාරක විජේසිංහ
සුදාරක විජේසිංහ

Sudaraka's posts

Post has shared content
Writing good commit messages via commit-template:

- To speed up the reviewing process.
- To help us write a good release note.
- To help the future maintainers (it could be you!), say five years into the future, to find out why a particular change was made to the code or why a specific feature was added.

Post has shared content
After a year of using ES6 day in and day out, here's my favorite parts, the way I like to use them, and a few best practices along the way.

Post has shared content
I wrote a MySQL client in Python that can do auto-completion and syntax-highlighting. It was funded through kickstarter. It is now available for general public.


If you're looking for a Postgres equivalent you should check out

Post has shared content
The way of Emmet works is by typing your tab keyboard key when done writing syntax. The following are most common Emmet symbols that you can used. To see them in action, please continue reading.

Post has shared content
New developers often don't understand why API or framework XYZ is said to be so fantastic, when it doesn't do much more than what the language / platform can already do (e.g. jQuery vs. the new browser APIs, or Hibernate vs. JPA etc.). 

Often these frameworks are primary driver in getting these features added to the standards. Spring greatly affected JEE. So did Hibernate. Doug Lea's concurrency classes made it into Java 5. XML parsers became part of the Java platform. AngularJS pushed to get Object.observe() added as a native function in the browser.

Maybe you don't need framework XYZ anymore today. But there was a time when you did, and the whole reason you don't need it anymore is because framework XYZ showed something that was missing in the language / platform.

මගේ project වල මගෙත් එක්ක වැඩ කරන්න තව programmer කෙනෙක් ඕනෙ වෙලා තියනව. Full-time freelance කරන කෙනෙක් වෙන්න ඕනෙ.

ගොඩක් තියෙන්නෙ PHP සහ JavaScript වැඩ, අලුත් ඒව ගොඩක් වෙලාවට Python වලින් කරන්නත් හිතන් ඉන්නව. Linux වල වැඩ කරන කෙනෙක් නම් ගොඩක් හොඳයි. ඒ වගේම Git පාවිච්චි කරන හැටිත් දැනගෙන ඉන්න ඕනෙ. තව විස්තර මේ ෆෝම් එකේ තියනව. කැමති කෙනෙක් ඉන්නවනම් පුරෝල එවන්න.

With latest #Linux kernel (3.19) boot time went just under 1s

$ systemd-analyze
Startup finished in 557ms (kernel) + 421ms (userspace) = 978ms

$ systemd-analyze blame
            72ms user@1000.service
            46ms systemd-logind.service
            37ms alsa-restore.service
            36ms systemd-user-sessions.service
            34ms rpcbind.service
            33ms systemd-udevd.service
            26ms ntpd.service
            26ms systemd-journal-flush.service
            24ms systemd-udev-trigger.service
            22ms systemd-journald.service
            20ms home.mount
            20ms systemd-fsck-root.service
            16ms dev-hugepages.mount
            15ms systemd-tmpfiles-setup-dev.service
            14ms systemd-fsck@dev-sda5.service
            12ms tmp.mount
            12ms kmod-static-nodes.service
            10ms dev-mqueue.mount
            10ms systemd-modules-load.service
            10ms sys-kernel-debug.mount
             8ms systemd-sysctl.service
             6ms systemd-vconsole-setup.service
             4ms systemd-update-utmp.service
             4ms systemd-tmpfiles-setup.service
             4ms systemd-random-seed.service
             4ms systemd-remount-fs.service
             1ms sys-kernel-config.mount

Post has attachment
Go back to roots with #Notepad

Post has shared content
Join me for an hour-long introduction to functional programming using Python.  We'll talk mostly about comprehensions (list/set/dict) and functions as parameters, but we'll undoubtedly discuss other topics, too!

The fun starts at 3 p.m. New York / 8 p.m. London / 10 p.m. Tel Aviv!

Love it because it works well, fast and now I know how to use it.

Hate it because it's #systemd

$ systemd-analyze
Startup finished in 729ms (kernel) + 503ms (userspace) = 1.233s
$ systemd-analyze blame
            60ms ntpd.service
            46ms systemd-logind.service
            41ms alsa-restore.service
            37ms rpcbind.service
            37ms systemd-user-sessions.service
            23ms systemd-udev-trigger.service
            22ms systemd-fsck-root.service
            17ms user@1000.service
            11ms systemd-fsck@dev-sda5.service
            11ms home.mount
            10ms systemd-tmpfiles-setup-dev.service
            10ms systemd-vconsole-setup.service
            10ms dev-mqueue.mount
             9ms systemd-modules-load.service
             9ms systemd-journal-flush.service
             9ms systemd-update-utmp.service
             8ms kmod-static-nodes.service
             8ms systemd-tmpfiles-setup.service
             5ms dev-hugepages.mount
             4ms systemd-random-seed.service
             4ms systemd-remount-fs.service
             3ms systemd-sysctl.service
             3ms systemd-udevd.service
             2ms tmp.mount
             2ms sys-fs-fuse-connections.mount
             1ms sys-kernel-config.mount
Wait while more posts are being loaded