Today's Question:  What are you most afraid of as a programmer?        GIVE A SHOUT

SEARCH KEYWORD -- Assignment



  A Python assignment trap


Python has no assignment, it only has reference. Assume, we have following code snippet: >>> values = [0, 1, 2] >>> values[1] = values >>> values [0, [...], 2] Why the result is not [0, [0, 1, 2], 2], instead it goes into an infinite loop? To understand this, we need to understand some basics about Python. Python has no variables, it only has labels. When we run: values = [0, 1, 2] Python will first create a list object [0,1,2], then it labels it as values. If we later...

   Python,Assignment,Trap,Shallow copy     2013-07-19 22:08:36


  Basic Patterns for Everyday Programming


For most of you the patterns mentioned below should be nothing new. These are very basic stuff we slap into our code everyday and at times feels they are actually code smells than smart patterns. However, I've been doing some code reviewing lately and came across many code that lacks even these basic traits. So I thought of writing them down as a help for novice developers who would want to get a better grasp at these.These patterns are commonly applicable in most general purpose programming lan...

   Pattern,Code,NULL,Function,JavaScript,Assign default value     2011-11-23 08:03:55


  Why is my IP blocked at a website I visit regularly after I changed ISPs?


I just installed a new Express Card with Verizon Broadband wireless last night. Had tons of fun accessing the web from places I usually cannot, (we are in trucking) until I got to my favorite forum. It's a public place I have been to thousands of times, but instead of happily browsing all the daily news events and checking to see if the world blew up yet, I found myself blocked by a big white screen that said YOUR IP ADDRESS HAS BEEN BANNED. What can I do? I can't go to the forum owners to ...

   ISP,IP Block,StopForumSpam,Solution     2012-02-01 08:53:38


  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 assignment True, this code is so...

   lvalue,rvalue,C++,locator value,elaboration     2011-12-15 07:51:38


  Understand this in JavaScript


In JavaScript, this is always pointing to the owner of a function or a method. Function Let's check out function first. function introduce() {      alert("Hello, I am Laruence\r\n"); } For this function, what does this point to? In JavaScript, a global function's owner is the current page, i.e, the window object. Because its a method of the window object if we define a global function. Now you should know the this will point to the window object in the above function. ...

   JavaScript,this,event,call     2013-04-03 04:10:03


  How NOT to teach a computer language


For the past year or so my wife has been taking online classes to get a computer science degree. For most of her classes she’s done great, she’s been flying through HTML and SQL, even up to the point where she can handle multilevel joins and optimizing through indexes. That was until she hit her vb.net class. I had no idea why she was having problems with a language has easy as vb.net so I started helping her out and find out why she was having so many problems. I’ve also added some recomm...

   Programming,Teach,Book,Grade,Method,Computer     2011-11-06 14:52:13


  Generate first N prime numbers


Recently I am taking an online course named "Startup Engineering" on coursera. There is one assignment which is to use NodeJS to write a program to generate the first 100 prime numbers. This may be very easy for many people. Here I just want to share with you the code to generate not only the first 100 prime numbers. but also any number of prime numbers. Below is the code snippet: //Helper class to generate prime numbers var PrimeProcessor=(function(){ var primeArray=[]; functio...

   Algorithm,Prime number,NodeJS,coursera,JavaScript     2013-06-29 22:08:22


  Eight C++ programming mistakes the compiler won’t catch


C++ is a complex language, full of subtle traps for the unwary. There is an almost infinite number of ways to screw things up. Fortunately, modern compilers are pretty good at detecting a large number of these cases and notifying the programmer via compile errors or warnings. Ultimately, any error that is compiler-detectable becomes a non-issue if properly handled, as it will be caught and fixed before the program leaves development. At worst, a compiler-detectable error results in los...

   C++,Compiler,Error detection     2012-04-08 09:55:20


  6 Reasons Why Devs Should Learn Ruby on Rails


Ruby on Rails has during the last ten years become an increasingly popular framework for web app development. The current shaky economy and rapidly changing tech environment requires the art of app building to be faster and more cost-effective. That's why becoming fluent in Rails might be a great way for developers to expand their knowledge, which can land them a number of great jobs or interesting projects, as well as grant access to a thriving community. Let's start with the basics – wha...

   Ruby on Rails,Advantage     2014-07-25 10:56:29


  this in JavaScript in detail


this in JavaScript is always confusing, it is one of the most frequently seen traps in JavaScript. this is not a good design in JavaScript(You can refer some other design flaws of JavaScript here), since it's lazy binding feature, it can be a global object, the current object or.... Some people even avoid using this in JavaScript. Actually if you master how this works, then you will know how to stay away from these traps. Let's take a look at what this points to in below situations. 1. In global...

   JavaScript,this,bind     2013-05-09 18:35:12