Navneet Kumar's Bookmarks tagged blog → View Popular
You are here: Diigo Home > Navneet Kumar's Bookmarks
BetterExplained | Learn Right, Not Rote
Tags: Web2.0, Programming, Blog, Resources, Articles, toread, Mathematics, Number_Theory on 2008-11-14 and saved by28 people -All Annotations (0) -About
more frombetterexplained.com
Coding Horror: Recommended Reading for Developers
Tags: reading, books, toread, programming, recommended, blog, software, coding, development on 2008-09-24 and saved by26 people -All Annotations (0) -About
more fromwww.codinghorror.com
Stevey's Blog Rants: Done, and Gets Things Smart
Tags: blog, steveyegge, HR, hiring on 2008-07-04 and saved by8 people -All Annotations (0) -About
more fromsteve-yegge.blogspot.com
-
hey hired brilliant seed engineers.
-
engineers you'd personally hire to work with you in your first startup company?
-
No! Screw that. You want someone who's superhumanly godlike. Someone who can teach you a bunch of stuff. Someone you admire and wish you could emulate, not someone who you think will admire and emulate yo
-
Someone who always seems to be finishing stuff so fast it makes your head spin. That's what my Done clause means. It means they're frigging done all the time.
-
They never seemed to be working that hard, but they were not only 10x as productive as their peers, they also managed technical feats that were quite frankly too scary for anyone else. They could (as just one trait) dive in and learn new languages and make fixes to tools that the rest of us assumed were, I dunno, stuff you'd normally pay a vendor to fix. They dove into the hairiest depths of every code base they encountered and didn't just add features and make fixes; they waved some sort of magic wand and improved the system while they were in there: they would Get Things Smart. Make the systems smarter, that is. Sort of like getting your act together, but they'd do it for your code.
-
You'll gradually realize that your math deficiencies aren't just something that you might need to beef up on if you ever "need to"; you'll see that virtually every problem space has a mathematical modeling component that you were blissfully unaware of until Done, and Gets Things Smart gal points it out to you and says, "There's an infinitely smarter approach, which by the way I implemented over the weekend."
-
your seed engineers: the ones who will make or break your company with both their initial technical output and the engineering-culture decisions they put into place — decisions that will largely determine how the company works for the next twenty years.
-
I think, that the Done, and Gets Things Smart folks aren't necessarily your friends. They're just people you're lucky enough to have worked with.
-
If you could mix in one Done, and Gets Things Smart person with every five to ten Smart, and Gets Things Done people, then you'd be in good shape, since the latter, being "smart", can hopefully learn a lot from the former.
-
And because Done, and Gets Things Smart people are worth their weight in refined plutonium, they're probably reasonably happy in their current position
-
eople who are freakishly good at what they do. People who finish things so fast that they seem to have paranormal assistance. People who can take in any new system or design for all intents instantaneously, with no "ramp-up", and who can immediately bring insights to bear that are quite simply beyond your rustic abilities.
-
the biggest enemy of geeks is not incompetence, it's arrogance. Not garden variety "I'm smarter than others" arrogance, but "I'm smarter than mostly everyone else, and I don't need to hear what you have to say, because I'm right, and you have nothing of value to say on this subject." It sabotages effective communication and learning by osmosis from coworkers.
-
being 'done' more often (and the only way there is to 'do' more efficiently)
Things You Should Never Do, Part I - Joel on Software
Tags: Blog, joel, Software_Engineering, Software_development on 2008-06-23 and saved by10 people -All Annotations (0) -About
more fromwww.joelonsoftware.com
-
They decided to rewrite the code from scratch
-
We're programmers. Programmers are, in their hearts, architects, and the first thing they want to do when they get to a site is to bulldoze the place flat and build something grand. We're not excited by incremental renovation: tinkering, improving, planting flower beds.
-
The idea that new code is better than old is patently absurd.
-
it's just a simple function to display a window, but it has grown little hairs and stuff on it and nobody knows why. Well, I'll tell you why: those are bug fixes.
-
Each of these bugs took weeks of real-world usage before they were found.
-
When you throw away code and start from scratch, you are throwing away all that knowledge. All those collected bug fixes. Years of programming work.
-
You are throwing away your market leadership. You are giving a gift of two or three years to your competitors,
-
You are wasting an outlandish amount of money writing code that already exists.
-
These problems can be solved, one at a time, by carefully moving code, refactoring, changing interfaces.
-
When optimizing for speed, 1% of the work gets you 99% of the bang.
-
you probably don't even have the same programming team that worked on version one, so you don't actually have "more experience"
-
You're just going to make most of the old mistakes again, and introduce some new problems that weren't in the original version.
Coding Horror: The Noble Art of Maintenance Programming
Tags: Software_development, Blog, Software_Engineering on 2008-06-23 and saved by4 people -All Annotations (0) -About
more fromwww.codinghorror.com
-
This is why code reuse is so hard. This is why everybody on your team has a different function they like to use for splitting strings into arrays of strings. They write their own function because it's easier and more fun than figuring out how the old function works
Coding Horror: Programmers Don't Read Books -- But You Should
Tags: Codong, Programming, Blog, Books on 2008-05-05 and saved by10 people -All Annotations (0) -About
more fromwww.codinghorror.com
-
The best programming books are timeless. They transcend choice of language, IDE, or platform. They do not explain how, but why.
Why, oh WHY, do those #?@! nutheads use vi?
Tags: Vim, Blog, editor on 2008-04-18 and saved by23 people -All Annotations (0) -About
more fromwww.viemu.com
-
You are always in normal mode, and only enter insert mode for short
bursts of typing text, after which you press <Esc> to go to normal
mode. -
You can use '(' or ')' for the current parenthesized block (or even 'b' from
'b'lock), '[' or ']', '{' or '}', 'w' for punctuation-delimited-word, or 'W' for
the current space-delimited word, prepending 'i' to any of them for the 'inside'
contents, or 'a' to include the delimiting characters too -
But the side effect is that you don't need to move your hands off the home row
to move around, which is great. -
motions: 'f' followed by any other character to find its next occurrence, '%' to
use matching parens to go where you want to go, etc... When navigating the file,
you have motions to go to the top/middle/bottom of the screen directly, '/'
which is effortless to type to search for a string, ']]' and the likes to
navigate by functions, etc. -
paste with auto-reindent (just ']p' in vim
Why There Aren't More Googles
enterpreneuer
Tags: Blog, PaulGraham on 2008-04-17 and saved by17 people -All Annotations (0) -About
more fromwww.paulgraham.com
-
More likely the reason is that the kind of founders who
have the balls to turn down a big offer also tend to be very
successful. That spirit is exactly what you want in a startup. -
"Don't worry about people stealing your ideas.
If your ideas are any good, you'll have to ram them down people's
throats." -
But it's the bold ideas that generate the biggest returns. Any
really good new idea will seem bad to most people; otherwise someone
would already be doing it.
Are larger buffers always better ? | MySQL Performance Blog
buferr sizes
Tags: MySQL, Performance, Blog on 2008-04-09 and saved by2 people -All Annotations (0) -About
more fromwww.mysqlperformanceblog.com
joshua's blog: lessons learned: autoincrement considered harmful
Tags: blog, database, database_design on 2007-08-28 and saved by3 people -All Annotations (0) -About
more fromjoshua.schachter.org
-
the natural identifier is some function of the user and the URL, for
example.Consider using the MD5 of some unique property to the object
Joe Gregorio | BitWorking | ETech '07 Summary - Part 2 - MegaData
Tags: blog, database, database_design, denormalization on 2007-08-28 and saved by3 people -All Annotations (0) -About
more frombitworking.org
-
the limits you need to put on yourself when storing a billion rows in a
database, and they included: no joins, no transactions, no stored procedures,
and no triggers. -
Joshua has similar suggestions from his experience building del.icio.us: no
joins, no transactions, no
autoincrement -
BigTable, Google's column-based store with no transactions
-
RDF + SPARQL + distributed data sources from around the web?
-
designing and maintaining yet another relational schema for yet another webapp - doing so is starting to make as much sense as designing my own filesystem or TP monitor.
-
What's the point in designing tables for a webapp when an RDF-backed store will manage the data for you and RDF queries will come back as tabular data anyway?
-
reason that rails and django are so productive; they're highly optimised for domain models. Raw RDF doesn't really do domains like that; you have to expend effort distilling triples into 'things';
What about Sun embracing JavaScript?
Tags: blog, javascript, sun on 2007-08-27 -All Annotations (0) -About
more fromwww.russellbeattie.com
-
There's a lot of work being done by the Mozilla foundation and Adobe to
integrate a killer JavaScript interpreter into both Flash and Firefox using
Adobe's Tamarin engine
Bruce Eckel's MindView, Inc: 3-11-04 About Latent Typing
Tags: blog, bruceeckel, languages, latenttyping, programming on 2007-08-23 -All Annotations (0) -About
more frommindview.net
-
"Java Generics" are actually not generics at all, but simply an autocasting
mechanism -
Java Generics" are
actually not generics at all, but simply an autocasting mechanism -
"directing" approach (you want to provide guidance to prevent people from
falling down) or an "enabling" approach (you want to provide tools and abilities
that allow people to move forward faster) -
the type is still there, it's
just implied. So on a very simple level, you could look at it as a device
that writes interfaces for you, so that you don't have to. It's an enabling
device that reduces the amount of code you have to write. -
Why do we want to use latent typing? It's a code organization and reuse
mechanism. -
But look at what the
interfacedoes: it weakens the type
constraints by first decoupling the interface from implementation – so you
only have an outline of what the type looks like, but no semantics attached. -
So with
interfaces, you're able to say "I don't care what type you are as long as you
can perform these operations." -
So the constraint-loosening mechanism is already there, in the form of
interfaces. Latent typing simply takes this one step further, and makes that
interface latent so you don't have to express the interface, or to implement it
in every class that you want to use in the function. Since we already have
interfaces, latent typing is just a coding convenience. -
it's not possible to prevent people from doing something
bad with your programming system no matter how safe you attempt to make it. And
there's a boundary beyond which all the "directing" guidance will fail -- a
programmer must have a certain level of understanding and be able to buy into a
particular language, environment, framework, etc., up to a certain level in
order to use those tools properly. Less than that, and they need training, not
type-checking. -
Latent typing simply
makes the interfaces implicit by, in effect, writing both theinterfacepart and theimplementationpart for you.
Prototype.js != $() « Chimney
Tags: blog, discussion, prototype on 2007-07-06 and saved by2 people -All Annotations (0) -About
more fromabcdefu.wordpress.com
wg:OOJS - overhyped and overcomplicating
Tags: blog, discussion, javascript, object-oriented, oop, programming on 2007-07-05 -All Annotations (0) -About
more fromweb-graphics.com
-
Javascript is Object-Oriented, in that it has an object model, an inheritance model and an encapsulation model (however primitive).
-
The question is whether or not there is any benefit in shoehorning a Prototype-based language into a Class-based paradigm, which principally means whether there is a benefit to class-based inheritance in Javascript
-
a fool can make anything more complex, but it takes a genius to make something simple.
Stevey's Home Page - Stevey's Drunken Blog Rants™
Tags: blog, steveyegge on 2007-06-27 and saved by8 people -All Annotations (0) -About
more fromsteve.yegge.googlepages.com
Stevey's Blog Rants: Moore's Law is Crap
Tags: blog, computing, distributed, grid, model, parallel, steve on 2007-06-27 -All Annotations (0) -About
more fromsteve-yegge.blogspot.com
-
If we move to cellular automata, or in fact any other parallel computational model that's resilient to node failures, then we'll need a new language, because the current serial languages will perform badly, or be horribly hard to manage, or both.
-
Cell or grid (or whatever) parallel computing will have a radically different internal economy. It'll need new data structures, new algorithms, new instruction sets, new everything.
-
Turing was one of the greatest geniuses of the century, but he'd have been the first person to tell you that there are infinitely many machine designs capable of the same computations. His was just one model, and his professor's (which led to Lisp) was just one other model. But who's to say they're the best models?
-
here are far more productive languages out there than the ones most of us are using. But most of them perform poorly on our hardware, because these languages are targeting meta-virtual machines, typically "defined" (informally) by the capabilities of the language itself. And if you're not targeting exactly the hardware you're on, the impedance mismatch will slow the language down.
-
You do realize that John von Neumann spent the last 10 years of his life singlehandedly developing a theory of computing based on cellular automata? The computer you're reading this blog rant on was his frigging prototype! He was going to throw it out and make a better one! And then he died of cancer
-
you can find a lot of consolation in a book on math, or machine learning, or compiler construction, or on just about anything that promises to help in some small way
-
best way to make progress is to keep learning new things *AND* cross fertilize the programming world with ideas and concepts from other domains (biotechnologies, nanotechnologies, quantum physics, etc...
-
any complex, multilevel boolean expression can be simplified to a wider and more shallow boolean expression. So couldn't we use such simplification processes to make wide but shallow optimizations that allow parallelism? Obviously, conditionals are a major blocking point. I was reading an article about how chip archtitecture has been recoiling from long pipelines simply because branch prediction strategies just don't work out for the huge gains that were once imagined.
-
but the bigest bottleneck now is not processor speed but network bandwidth. And after that I'd put disk latency.
-
biggest problem in computing today is more one of HCI - how to get a mobile phone to painlessly do computer-like stuff. It's not a question of processing power but interface.
-
t multi-threading is a design and process problem, not a programming one
-
In some ways, computers are like programmable slaves - which is a good thing. If computers get too smart then they will not want to work for us, they will want to sit around and flirt with each other touching each others serial ports every so often.
-
silicon can't grow and repair itself. Nanobots can repair things though. If we could program nano bots to be like bacteria and then move on to more complex nanobots, then we would be closer to life. Life moves, nanobots move, metal doesn't move. Water flows, dry metal and circuit boards do not.
-
a nano cell that sucks in sugar and water and gives it to another nanobot which creates electricity from it to send electrical signals through tiny strands of wire or just the liquid itself since wires can break and liquids cannot break.
-
The idea right now may be to make computers do lots of stuff for us without them complaining. The procedural code out there for example is all based on Slavery.. GetText, SetText, are all demanding and the computer has no option to have fun
-
If the computer is programmed to have fun it won't do any work.. unless we somehow make it a fine balance between slavery and play. We may end up making nanobot based robot slaves that enjoy doing lots of work.. if we program them to enjoy work instead of hate it. But this may lead to the nanobots becoming destructive beasts doing anything to get stuff done.
Ajaxian » 2005 » September
Tags: ajax, article, blog, web2.0 on 2006-09-07 and saved by5 people -All Annotations (0) -About
more fromwww.ajaxian.com
- a good set of articles on web development and web technologiespost by navneetk on 2006-09-07
Notation: * = Private bookmark and comment|… = Clipping [?] | … = Public highlight [?]


