SEARCH KEYWORD -- Science
Find max subarray of an array
In computer science, the maximum subarray problem is the task of finding the contiguous subarray within a one-dimensional array of numbers (containing at least one positive number) which has the largest sum. For example, for the sequence of values −2, 1, −3, 4, −1, 2, 1, −5, 4; the contiguous subarray with the largest sum is 4, −1, 2, 1, with sum 6. The problem was first posed by Ulf Grenander of Brown University in 1977,...
Max Subarray, Divide and conquer,Kadane 2013-04-22 11:50:35
Before Python
This morning I had a chat with the students at Google's CAPE program. Since I wrote up what I wanted to say I figured I might as well blog it here. Warning: this is pretty unedited (or else it would never be published :-). I'm posting it in my "personal" blog instead of the "Python history" blog because it mostly touches on my career before Python. Here goes.Have you ever written a computer program? Using which language?HTMLJavascriptJavaPythonC++COther - which?[It turned out the students ha...
Python,History,Programming language,B 2012-01-18 08:08:53
Hacking Vs. Programming
What is the difference between Hacking and programming? One opinion I have heard expressed is that a hacker can put a lot of code together in a hurry but if a change is needed the code has to be completely rewritten. A programmer may take a little longer but if changes are needed they are more quickly and easily installed without the need for a complete rewrite. One source I heard attributed an observation like this to Maggie Johnson of Google. It rings true to me though. Hacking is usual...
Hacking,Programming,Coding style 2012-04-23 06:09:24
The Wasteful Legacy of Programming as Language
A few years ago I visited a friend who is a graduate student in linguistics. After some time he asked me if I was aware of the work by Chomsky on formal languages. I told him that yes, Chomsky work was a basis for much of the developments in theoretical computer science. More than that, I was glad to learn that there was something technical that I could share and discuss with other people in linguistics. At the time I found this was just a great coincidence. It was only recently, though, t...
Programming language,Human language,Chomsky 2011-11-28 10:36:34
C Preprocessor Hell
Lisp programmers should stop reading right now because they'll likely suffer severe injury of the jaw muscles as they laugh themselves silly at how hard it is to do some things in C. The C language has a pre-processor (typically called cpp) that is both infuriating and powerful. How powerful is usually best described as 'just too little' and it has happened more than once that I found myself almost - but not quite - able to do what I wanted to do. The frustration can run very deep at ti...
C,Preprocessor,Lisp,Hell 2012-01-19 10:22:31
Some lovely software design quotes
Every time when I read technical books, I like reading the quote of a famous person at the start of a chapter(if any), usually they are very interesting. Here is a collection of famous quotes. Life’s too short to build something nobody wants – Ash Maurya, Running Lean author Give someone a program, you frustrate them for a day; teach them how to program, you frustrate them for a lifetime. – David Leinweber There are two ways of constructing a software design: One way is...
Quote,Software design 2012-10-13 09:13:34
Fear of Ignorance
This past week, I was interviewing a candidate for a VP role along with two of our engineering leads. Everyone in the room excluding myself was classically “technical†– they could write code, had experience solving hard software problems and a background in computer science. I wrote my last line of PHP in 2004, and it had to be rewritten by a real programmer within 6 months.During the interview, we had the following exchange (due to an imperfect memory, I’ll ...
Leader,Team,Technical,Leadership,Ignorence 2011-11-21 10:03:03
How I Became a Programmer
I posted a very brief response to a post on HackerNews yesterday challenging the notion that 8 weeks of guided tutelage on Ruby on Rails is not going to produce someone who you might consider a "junior RoR developer." It did not garner many upvotes so I figured that like most conversation on the Internet it faded into the general ambient chatter. Imagine my surprise when I woke up to couple handfuls' worth of emails from around the world asking me what I did, how I did it, an...
Programmer,Advice,Method,Study 2011-11-24 09:14:50
Wow: Intel unveils 1 teraflop chip with 50-plus cores
I thought the prospect of quad-core tablet computers was exciting.Then I saw Intel's latest -- a 1 teraflop chip, with more than 50 cores, that Intel unveiled today, running it on a test machine at the SC11 supercomputing conference in Seattle.That means my kids may take a teraflop laptop to college -- if their grades don't suffer too much having access to 50-core video game consoles.It wasn't that long ago that Intel was boasting about the first supercomputer with sustained 1 teraflop performan...
Intel,Chip,Multi-core,teraflop 2011-11-16 08:15:39
The Greatest Hacks of All Time
Reader's advisory: Wired News has been unable to confirm some sources for a number of stories written by this author. If you have any information about sources cited in this article, please send an e-mail to sourceinfo[AT]wired.com. In 1972, John T. Draper discovered he could make free long-distance phone calls using a whistle from a Cap'n Crunch cereal box. The whistle emitted a 2,600-hertz tone that got him into the internal authorization system at the phone company. With another noi...
RECENT
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- more>>