Code Monkey home page Code Monkey logo

guides's Introduction

Hi there ๐Ÿ‘‹

I'm a Backend Engineer based in Bangalore, India.

  • ๐Ÿข I'm currently working full-time with awesome peeps in an early stage startup.
  • I am one of the maintainers of SimplQ.me, an open source crowd control platform.
  • ๐Ÿ’ฌ Feel free to reach out to me for pro bono consulting and volunteering, or just for some interesting discussion over here.

fury's GitHub stats

Rob Pike's 5 Rules of Programming

  • Rule 1. You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is.
  • Rule 2. Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest.
  • Rule 3. Fancy algorithms are slow when n is small, and n is usually small. Fancy algorithms have big constants. Until you know that n is frequently going to be big, don't get fancy. (Even if n does get big, use Rule 2 first.)
  • Rule 4. Fancy algorithms are buggier than simple ones, and they're much harder to implement. Use simple algorithms as well as simple data structures.
  • Rule 5. Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming.

Pike's rules 1 and 2 restate Tony Hoare's famous maxim "Premature optimization is the root of all evil". Ken Thompson rephrased Pike's rules 3 and 4 as "When in doubt, use brute force.". Rules 3 and 4 are instances of the design philosophy KISS. Rule 5 was previously stated by Fred Brooks in The Mythical Man-Month. Rule 5 is often shortened to "write stupid code that uses smart objects".

guides's People

Contributors

13ththief avatar anjalix avatar ba11b0y avatar bouncey avatar chiragbhansali avatar codersc avatar davcri avatar dhcodes avatar elaine-jackson avatar erictleung avatar ethan-arrowood avatar hasnaas avatar hchiam avatar hkuz avatar johnkennedy9147 avatar kgashok avatar kuriakinzeng avatar physicsjoe avatar pragadheesh avatar pranabendra avatar quincylarson avatar rubberduckdestroyer avatar sayan98 avatar shovanch avatar stevechevalier avatar svram avatar systimotic avatar texas2010 avatar vancanhuit avatar vanessasena avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.