Today's Question:  What does your personal desk look like?        GIVE A SHOUT

 ALL


  Understanding lvalues and rvalues in C and C++

The terms lvalue and rvalue are not something one runs into often in C/C++ programming, but when one does, it’s usually not immediately clear what they mean. The most common place to run into these terms are in compiler error & warning messages. For example, compiling the following with gcc:int foo() {return 2;}int main(){ foo() = 2; return 0;}You get:test.c: In function 'main':test.c:8:5: error: lvalue required as left operand of assignmentTrue, this code is somewhat perverse and not something you’d write, but the error message mentions lvalue, which is not a term one ...

3,409 0       C++ ELABORATION LVALUE RVALUE LOCATOR VALUE


  Why Firefox Isn't Doomed

This has been a rough year for Mozilla and its Firefox team. Once the darling of the Web and the champion of the oppressed against Microsoft and Internet Explorer, Firefox is facing stiff competition from its primary benefactor and backlash from users. Chrome also seems to be the preferred browser of Web developers. Naturally, this means speculation about the future of Firefox. Has Firefox had better years? Absolutely. Does this mean that Firefox is "doomed"? Not so fast. Google Will Probably RenewLet's start with Firefox's potential revenue problem. If Google doesn't renew, Mozilla could be f...

3,146 0       GOOGLE COMPETITION FIREFOX MARKET SHARE


  Circumventing browser connection limits for fun and profit

A few days ago, this video hosted by metacafe popped up on digg, explaining how to increase site download times by tweaking your browser settings to increase connection parallelism. To explain why this works, let’s step back a bit to discuss how browsers manage server connections.In building any application, developers are often required to make ‘utilitarian’ choices. Pretentiously paraphrasing Jeremy Bentham, ‘utilitarian’ describes an approach that ‘does the greatest good for the greatest number.’ Many times, sacrifices in performance are made...

3,748 0       AJAX SOLUTION HTTP CONCURRENT CONNECTION LIMIT


  XML Abuse

It’s everywhere. XML Abuse. From Domain Specific Languages to Data Serialization, XML is the most commonly abused data format I’ve ever encountered.XML is perfectly fine for (because it was designed for this):First of all: XML was designed to be written by humans and read by humans. Nearly all generated XML I’ve seen sucks badly. I think this is because XML cannot efficiently represent common data structures found in programming languages.XML is good for representing trees. If you imagine the outline of a document, you see that this is definitly a tree....

3,975 0       XML ABUSE ALTERNATIVE SERIALIZATION DATA STORAGE


  Apps and web apps and the future

Dave Winer: Why apps are not the future:The great thing about the web is linking. I don’t care how ugly it looks and how pretty your app is, if I can’t link in and out of your world, it’s not even close to a replacement for the web.Let’s set aside one thing right away. The browser is an app. Text editors, outliners, and web servers are apps. And, without them, there’s no web at all.Somebody has to write these things. That implies APIs and more tools that are also apps. It implies an entire ecosystem of apps that are absolutely vital to the web.I think Dave is...

3,616 0       APP WEB APP FUTURE DIFFERENCE


  I don’t like the Ruby 1.9 hash syntax

There, I said it, I don’t like it. And I don’t know why you do either.I assume you like it anyway, everyone else I talk to seems to. My heart sank over and over again whilst I was at the recent RailsConf and saw respected rubyist after respected rubyist using the new Ruby 1.9 hash syntax in their presentations.I just don’t get it.But I’m not one to just moan. I plan to justify my feelings. Then maybe you can tell me why you do like it?My friend the hash rocketI like the hash rocket (not least because it’s a rocket) and I know it’s not going away. Howev...

7,825 0       RUBY FEATURE 1.9 HASH


  Easy Parallel Processing in PHP

The proliferation of multicore CPUs and the inability of our learned CPU vendors to squeeze many more GHz into their designs means that often the only way to get additional performance is by writing clever parallel software. One problem we were having is that some of our batch processing jobs were taking too long to run. In order to speed the processing, we tried to split the processing file into half, and let a separate PHP process run each job. Given that we were using a dual core server, each process would be able to run close to full speed (subject to I/O constraints).Here is our technique...

6,724 0       PHP PARALLEL PROCESSING MULTITHREADING LIKE SLEEP


  Vim: revisited

I’ve had an off/on relationship with Vim for the past many years.Before, I never felt like we understood each other properly. Vim isalmost useless without plugins and some essential settings in .vimrc, but fiddling with all the knobs andinstalling all the plugins that I thought I needed was a process that inthe end stretched out from few hours to weeks, months even; and it theend it just caused frustration instead of making me a happier coder.Recently, I decided to give Vim another shot. This time around it wasdifferent – something in my brain switched and now for the first ti...

2,726 0       LINUX SETUP VIM EDITOR QUICK GUIDELINE