Site uses cookies to provide basic functionality.
Javascript rendering is set to off by default when visiting the site via .onion and .i2p domains. It can be enabled back again in user's settings section. Javascript rendering set to off means, that you can disable javascript in your browser now and the site will remain functional.
There is also IRC server now available via native IRC clients or non javascript web based one.
Fonts can be adjusted in user's settings section as well.
Check FAQ for more.

OK

Dear readers, I’ve started the slow migration of code from puppet 2.6 all the way to 3.x+. There were a few things I wasn’t clear on, so hopefully this will help to discuss these and make your migration easier! I used hiera in 2.6, and I actually like it a lot so far. I was concerned that automatic lookups would pull in values that I wasn’t expecting. This is not the case or a worry. Let’s dive in and let the code speak:

Dear readers, I’ve started the slow migration of code from puppet 2.6 all the way to 3.x+. There were a few things I wasn’t clear on, so hopefully this will help to discuss these and make your migration easier! I used hiera in 2.6, and I actually like it a lot so far. I was concerned that automatic lookups would pull in values that I wasn’t expecting. This is not the case or a worry. Let’s dive in and let the code speak:

Erlang Profiling Tips - srijan.ch - 13 years ago - eng


There are many short methods in the Apache Commons libraries that seem like overkill at first glance, however, their purpose becomes more apparent when you examine the effect that these methods have on the readability of the caller. I see a lot of code that does stuff like this: if( s == null || "".equals(s.trim())) { // Do something } which could be re-written as if( StringUtils.isBlank(s)) { // Do something } Personally, I..

Erlang Profiling Tips - srijan.ch - 13 years ago - eng

Erlang Profiling Tips - srijan.ch - 13 years ago - eng

I often have this need to remove some keys from a list of dict, like cleaning it before passing it. Comment on Gist

The following [question]( http://stackoverflow.com/questions/4649423/should-switch-statements-always-contain-a-default-clause/4649518#4649518" target="_blank">http://stackoverflow.com/questions/4649423/should-switch-statements-always-contain-a-default-clause/4649518) was asked on Stack Overflow: I was told that it’s good practice to include a default clause in all switch statements. I recently remembered this advice but can’t remember ..


First, let me start with an apology for not blogging as frequently. It’s been hectic these past few weeks and I could barely find the time to write this! That’s generally a “good thing(tm)”. One of my favorite things about working with Codename One is the GUI builder, it solves a lot of the headaches of handcoding/positioning elements into place especially when coupled with the Codename One LIVE! application. However, not all of us use th..

If you already downloaded snapper v4, then better re-download it again  as the v4.03 also runs in SQL Developer! You might also want to check how to enable the DBMS_OUTPUT display in SQL Developer post by “That” Jeff Smith :-) Update:   Niall Litchfield pointed out that the “set serverout on” command was ignored on SQL Developer because I was using the short syntax (server out  instead of server output ). Once I changed this,..

If you already downloaded snapper v4, then better re-download it again  as the v4.03 also runs in SQL Developer! You might also want to check how to enable the DBMS_OUTPUT display in SQL Developer post by “That” Jeff Smith :-) Update:   Niall Litchfield pointed out that the “set serverout on” command was ignored on SQL Developer because I was using the short syntax (server out  instead of server output ). Once I changed this,..

Snapper used to require access to DBMS_LOCK, so it could sleep for X seconds between the “before” and “after” performance data snapshots. Now it is possible to get away without using DBMS_LOCK. Instead you will run Snapper twice, once for taking the “before” snapshot, then run your workload and then run Snapper again for taking the “after” snapshot and print the output. So, the usual way of running snapper is this:

Snapper used to require access to DBMS_LOCK, so it could sleep for X seconds between the “before” and “after” performance data snapshots. Now it is possible to get away without using DBMS_LOCK. Instead you will run Snapper twice, once for taking the “before” snapshot, then run your workload and then run Snapper again for taking the “after” snapshot and print the output. So, the usual way of running snapper is this:

I have fixed most of the bugs that showed up during the Snapper launch party session and uploaded the new version (v4) of Snapper here: https://github.com/tanelpoder/tpt-oracle/blob/master/snapper.sql I have uploaded some of my videos to https://www.youtube.com/tanelpoder : Snapper & Ashtop Overview Snapper v4 Launch Party video (old) I have not updated the snapper documentation yet, but here are the main improvemen..

I have fixed most of the bugs that showed up during the Snapper launch party session and uploaded the new version (v4) of Snapper here: https://github.com/tanelpoder/tpt-oracle/blob/master/snapper.sql I have uploaded some of my videos to https://www.youtube.com/tanelpoder : Snapper & Ashtop Overview Snapper v4 Launch Party video (old) I have not updated the snapper documentation yet, but here are the main improvemen..

HtmlToWord - tomforb.es - 13 years ago - eng
You can find the code here on github and the package here on PyPi I have written and continue to maintain a reporting system for a group of pentesters. During/after the tests the results and details are inputted into a web application using a WYSIWYG editor called Redactor (which is pretty awesome!)...

HtmlToWord - tomforb.es - 13 years ago - eng
You can find the code here on github and the package here on PyPi I have written and continue to maintain a reporting system for a group of pentesters. During/after the tests the results and details are inputted into a web application using a WYSIWYG editor called Redactor (which is pretty awesome!)...


Back in December of 2004 I started a new life from zero. I was 22 years old without any money, education or connections. I borrowed my mothers computer and started to learn HTML and internet marketing. That is now 8 years ago and each year I publish an annual report. Earlier reports are linked from [...]

Back in December of 2004 I started a new life from zero. I was 22 years old without any money, education or connections. I borrowed my mothers computer and started to learn HTML and internet marketing. That is now 8 years ago and each year I publish an annual report. Earlier reports are linked from [...]

Back in December of 2004 I started a new life from zero. I was 22 years old without any money, education or connections. I borrowed my mothers computer and started to learn HTML and internet marketing. That is now 8 years ago and each year I publish an annual report. Earlier reports are linked from [...]

Back in December of 2004 I started a new life from zero. I was 22 years old without any money, education or connections. I borrowed my mothers computer and started to learn HTML and internet marketing. That is now 8 years ago and each year I publish an annual report. Earlier reports are linked from [...]


I recently posted an exploratory piece on why programmers who are genuinely interested in improving their mathematical skills can quickly lose stamina or be deterred. My argument was essentially that they don’t focus enough on mastering the basic methods of proof before attempting to read research papers that assume such knowledge. Also, there are a number of confusing (but in the end helpful) idiosyncrasies in mathematical culture that are..

I recently posted an exploratory piece on why programmers who are genuinely interested in improving their mathematical skills can quickly lose stamina or be deterred. My argument was essentially that they don’t focus enough on mastering the basic methods of proof before attempting to read research papers that assume such knowledge. Also, there are a number of confusing (but in the end helpful) idiosyncrasies in mathematical culture that are..

I recently posted an exploratory piece on why programmers who are genuinely interested in improving their mathematical skills can quickly lose stamina or be deterred. My argument was essentially that they don’t focus enough on mastering the basic methods of proof before attempting to read research papers that assume such knowledge. Also, there are a number of confusing (but in the end helpful) idiosyncrasies in mathematical culture that are..

Shortly after we began working together on Discourse , Jeff wrote a post about infinite scrolling . At first, I was surprised at how many people claimed to hate sites that used it. However, after reading through many comments about it, I realized that most didn’t hate the scrolling itself, they hated how it broke their browser! Infinite Scrolling done wrong: Twitter When I visit Twitter, I am presented with a list of tweets in reverse..

My mate has given me a laptop (which in itself is a strange occurrence, but that’s not the subject of this blog entry). It comes with two OSs, which you can choose from at boot: Android Windows 7 I mean, sure enough, this Acer Aspire netbook literally runs Android. But the hardware is different from any other device I’ve used Android on in the following respects:

As a day to day Python and iOS developer, I’m using a lot of tools on my Mac, here is a list that could help you too. Textmate 2, Free, it’s funny to see that most people don’t know Textmate 2 is open source and totally free, this is a wonderful editor with completion and support for most languages. SublimeText 2, free/pay, I’ve switched to Sublime mostly for the Golang support with Gosublime and not regreting it.

The promised hacking session about Exadata performance troubleshooting will happen on Thursday 21st February 9am-11am PST (2 hours). I will show a number of examples and demos where the Exadata Snapper shows what was going on in storage cells when running Smart Scans or just doing IO. Register here (free stuff!): https://www1.gotomeeting.com/register/270528161 Slides: /files/Tanel_Poder_Drilling_Deep_Into_Exadata_Performance...

The promised hacking session about Exadata performance troubleshooting will happen on Thursday 21st February 9am-11am PST (2 hours). I will show a number of examples and demos where the Exadata Snapper shows what was going on in storage cells when running Smart Scans or just doing IO. Register here (free stuff!): https://www1.gotomeeting.com/register/270528161 Slides: /files/Tanel_Poder_Drilling_Deep_Into_Exadata_Performance...

Here’s an example of a quick’n’dirty way of profiling stack traces on your command line. This is an example from Solaris (but the script should work on Linux too plus other Unixes with minor modifications). I created a problem case below, based on a case I once troubleshooted at a client site. Note that they had set optimizer_mode = FIRST_ROWS in their database and the optimized came up with a very inefficient execution plan for the selec....

Here’s an example of a quick’n’dirty way of profiling stack traces on your command line. This is an example from Solaris (but the script should work on Linux too plus other Unixes with minor modifications). I created a problem case below, based on a case I once troubleshooted at a client site. Note that they had set optimizer_mode = FIRST_ROWS in their database and the optimized came up with a very inefficient execution plan for the selec....

Most people know what when writing a Linq query with Entity Framework that until that query is enumerated it won't call out to the database…

Most people know what when writing a Linq query with Entity Framework that until that query is enumerated it won't call out to the database…

On at least a weekly basis and not uncommonly multiple times in a single week I get this question: @neilmiddleton I’ve been hunting for a nice PG interface that works within other things. PGAdmin kinda works, except the SQL editor is a piece of shit Sometimes it leans more to, what is the Sequel Pro equivilant for Postgres. My default answer is I just use psql, though I do have to then go on to explain how I use it. For those just....

On at least a weekly basis and not uncommonly multiple times in a single week I get this question: @neilmiddleton I’ve been hunting for a nice PG interface that works within other things. PGAdmin kinda works, except the SQL editor is a piece of shit Sometimes it leans more to, what is the Sequel Pro equivilant for Postgres. My default answer is I just use psql, though I do have to then go on to explain how I use it. For those just....

After 6 years of existence, where this blog was self hosted, it’s now running on Google App Engine with webapp2 Python framework. It was previously a Django application, but no code has been reused, it’s a total rewrite (approx 5 hours). The Google App Engine ecosystem is very good, all the tools are efficient and except a middle quality documentation, it was a pleasure to rewrite and transfer this blog.

Clojure has virtually zero syntax. What I mean by that is that all structures look the same: the first item in a list is the function and the rest are the arguments. This is true for variable assignment, if statements, data structures and functions themselves. ( + 1 2 ) ( defn greet [ name ] ( str "Hello " name )) ( def user-count 334 ) However, before you can do anything useful in ....

Clojure has virtually zero syntax. What I mean by that is that all structures look the same: the first item in a list is the function and the rest are the arguments. This is true for variable assignment, if statements, data structures and functions themselves. ( + 1 2 ) ( defn greet [ name ] ( str "Hello " name )) ( def user-count 334 ) However, before you can do anything useful in ....

Learn how to properly implement UIAppearance in custom views, including important gotchas about setter tracking and initialization patterns.

Just a quick Ruby tip today. If you use the Paperclip gem for image attachment with Ruby, you might have noticed the option to use a hash as part of your URL. Using this provides a simple way of creating a secret URL for your images. Rather than an easily predictable URL, a section of the URL created by hashing a secret key with a row from the database. For instance, the following code you might get a URL like /avatars/square/c2794196caf44b..

20 visitors online