News for hackers. Stuff that matters.

cbab

Re:Random Acts of Optimization on Thursday October 29, 2015 @11:07PM (#10475947)
Yup, basically Chrome is using an inverted flame graph (See [1] for additional infos and tools).

[1] - https://github.com/brendangregg/FlameGraph

Re:How Does a Debugger Work? on Monday November 24, 2014 @07:22PM (#8655599)
A great book on the subject is "The Art of Debugging with GDB, DDD, and Eclipse" [1].

[1] - http://www.nostarch.com/debugging.htm

Re:Show HN: Axis - a React.js multiplayer math game on Tuesday November 18, 2014 @11:04PM (#8628183)
Very nice concept. Reminds me a lot of my TI-83 graph calculator days with a small dose of Scorched Earth :).
Re:LTTng: An open-source tracing framework for Linux on Thursday October 16, 2014 @03:04PM (#8466806)
Thanks for reporting your issues on Fedora.

4) We will definitely fix that omission.

5a) liburcu is a dependency of the lttng-ust and lttng-tools. The dependency should be accounted for in the respective Fedora packages.

6) Yes please submit a bug for this at [1]. We will investigate that failure to build on Fedora.

[1] - http://bugs.lttng.org/projects/lttng-modules

Re:LTTng: An open-source tracing framework for Linux on Thursday October 16, 2014 @02:37PM (#8466556)
You can also find all the presentations/publications that we did through the years here [1].

[1] - http://lttng.org/publications/

Re:LTTng: An open-source tracing framework for Linux on Thursday October 16, 2014 @02:01PM (#8466295)
Thanks, we worked quite hard on this new redesign!

edit: Yes, EfficiOS [1] is the open source business behind the LTTng project :).

[1] - https://www.efficios.com/

Re:Linked lists with wait-free reads in C++ on Saturday October 04, 2014 @06:02PM (#8410799)
The Userspace RCU [1] library might also be interesting for wait-free linked lists and other RCU aware data structures.

[1] - http://lttng.org/urcu/

One of the main technical reason I would say is that CeroWRT has the CoDel[1] queue management enabled by default. See also [2].

[1] - http://www.bufferbloat.net/projects/codel/wiki

[2] - https://www.bufferbloat.net/projects/cerowrt/wiki/How_is_Cer...

Re:Stripe Open-Source Retreat on Thursday April 24, 2014 @07:58PM (#7643886)
Yes indeed. Encouraging open source contribution, validating that he/she can get stuff done and evaluate culture fit. Win-win-win.
On recent C++ projects, I used the TAP [0] test format. It's quite minimalistic and does the job.

Debugging tools have improved quite a bit. I suggest you take a look at asan [1] for memory related errors. Also, tsan [2] looks very promising for data races detection. I think both tools have been integrated within LLVM/Clang/GCC.

Also, you might want to take a look at tracing tools such as (shameless plug!) LTTng [3] for userspace.

Static analysis tools are quite "en vogue" right now. IMO, nothing comes close to Coverity Scan [4]. It's free for open source projects, but you will have to fork (quite) a bit of money to run this tool on proprietary applications. On the other hand, purely FOSS static-analyzer such as clang-analyzer and cppcheck can catch nasty errors. I would suggest using a mix of all these tools.

[0] - http://testanything.org/testing-with-tap/c-plus-plus.html

[1] - https://code.google.com/p/address-sanitizer/

[2] - https://code.google.com/p/data-race-test/wiki/ThreadSanitize...

[3] - http://lttng.org/ust

[4] - https://scan.coverity.com/

Re:A Story Of realloc (And Laziness) on Sunday April 06, 2014 @02:51PM (#7542111)
I respectfully disagree with this. Ignoring return values is _not_ good practice. It is a slippery slope to bad software. By catching these memory errors, a program has the chance to properly teardown and report a message to the user instead of crashing.
Re:How I Judge the Quality of Documentation on Thursday February 27, 2014 @12:58PM (#7313703)
Absolutely! Codebases in "franglais" are terrible. Also, when documenting such codebases, I cringe whenever I see public APIs with mixed language members.
Re:The Magic of strace on Friday January 31, 2014 @02:33PM (#7158673)
or LTTng with both kernel and userspace tracers http://lttng.org

Disclaimer: LTTng developer :)