Simply wonderful! AlunaGeorge has been making some noise in this past year, and I’m glad they brought this about!
I discovered these two songs recently (from the brilliant Et Musique Pour Tous) and I wanted to have them here for my convenience 🙂
I love Paul Simon, mostly because my mom loves Paul Simon. I also dig some other remixes done by Flight Facilities. What a great combination! It captures the spirit of the original song while adding a little bit of…other worldliness. I can’t quite figure it out, but it is fantastic. I also appreciate the usage of the word ‘Edit’ instead of ‘remix’. ‘Edit’ seems more appropriate here.
I don’t listen to much Two Door Cinema Club outside of when it pops up on my internet radio stations, but I really love the singer’s voice. Perhaps I should spend more time listening to their music. I have never heard of The Chainsmokers before, but I want to learn more!
Et Musique Pour Tous – The best music blog ever
The Chainsmokers FB page – Their homepage isn’t very useful, so this seemed better.
I ran into a new sub-reddit today called /r/ReadableCode. In this brand new sub-reddit, the top topic was this:
How I comment function calls with a lot of parameters (which linked to this image: http://i.imgur.com/C9kOjXh.jpg)
I thought it was an interesting manner of commenting the arguments in a function with a ton of arguments. I had never seen this before, but I admit it was visually pleasing. I have questions about how easily maintainable these comments are, especially if you start copy-pasting this, but it was definitely interesting.
But the real gold was in the comments, as often is the case on reddit. There was a fun discussion on the various methods of commenting.
There is the method I am most used to, which is separating out each argument onto it’s own line, and commenting each line:
HANDLE hFile = ::CreateFile( fullFileName.c_str(), GENERIC_READ, FILE_SHARE_READ, // block other processes from writing NULL, // default security descriptor OPEN_EXISTING, // error unless file already exists NULL, // fileAttributes -- ignored for OPEN_EXISTING NULL // no template file );
The idea of passing in each argument as a variable was interesting, as it gives them a name:
// We will draw on this context to render the cursor into the pixel buffer data cgContext = CGBitmapContextCreate(baseAddress, width, height, 8, // bits per component bytesPerRow, colorspace, kCGImageAlphaPremultipliedLast);
I liked the idea of passing in a struct that you have to fill in.
WallSegment segment_middle; segment_middle.wall = wallData; segment_middle.start = oldEnd; segment_middle.end = start + delta * (float)(highlightIndex + 1); segment_middle.highlight = true; segment_middle.type = WallSegmentType_Middle; segment_middle.type_next = WallSegmentType_End; _AddSegment(segment_middle); oldEnd = _addWallSegment(segment_middle);
Someone pointed out that some languages support explicit naming of the arguments, which I had forgotten about!
erosion_water(matrix=a, gravity=3, speed=4)