Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Master



  Programming Language Readability

Lets compare some Python to Haskell for solving the same problem.  The problem we’ll pick is Trie data-structure for auto-completions.  We are interested not so much in the nitty gritty of the algorithm, but in the language style itself.  Auto-complete has been in the programming news a lot recently; both a Python and a Haskell solver have turned up. (I suspect this post got flagged on Hacker News :(  It never got on the front-page despite the rapid upvoting on a n...

   Programming,Readability,Python,Haskell     2012-02-27 04:52:02

  The internals of slice in GoLang

There are 3 components of slice:a) Pointer: Points to the start position of slice in the underlying array;b) length (type is int): the number of the valid elements of the slice;b) capacity (type is int): the total number of slots of the slice. Check the following code: package main import ( "fmt" "unsafe" ) func main() { var s1 []int fmt.Println(unsafe.Sizeof(s1)) } The result is 24 on my 64-bit system (The pointer and int both occupy 8 bytes). In the next example, I will use gdb to poke t...

   GOLANG,SLICE     2019-06-30 02:55:22

  Advice on improving your programming skills

Programming is cool. But behind the scenes it's also difficult for many people. Many people are defeated at the early stage of learning programming. When you are not so familiar with programming, you may find you don't know where to start and what to start with first and where to apply the knowledge. Once you go though the tough period of the learning phase, you will find a whole new world. Below are some advice which can help you improve your programming skills quickly. Write more code.  T...

   Programming,Advice     2014-02-21 08:59:04

  How GitHub Works: Be Asynchronous

This is — by far — my favorite aspect of working at GitHub. Everything is asynchronous. Chat GitHub didn’t have an office for the first two years. Chat rooms (in our case, Campfire) is where things got done. Today we’ve moved into our second office, and Campfire is still where we get things done. There’s a reason for that: chat is asynchronous. Asynchronous communication means I can take a step out for lunch and catch up on transcripts when I get back. Async...

   GitHub,Work,Style,Asynchronous,Efficienc     2011-08-19 07:44:20

  How Computers Boot Up

The previous post described motherboards and the memory map in Intel computers to set the scene for the initial phases of boot. Booting is an involved, hacky, multi-stage affair – fun stuff. Here’s an outline of the process: An outline of the boot sequence Things start rolling when you press the power button on the computer (no! do tell!). Once the motherboard is powered up it initializes its own firmware – the chipset and other tidbits – and tries to ...

   Computer,Boot-up,Rationale     2012-04-11 13:43:02

  Top 8 website operation laws

As a website operator, in addition to have some necessary professional knowledge to master a website, such as prototype planning, interaction design, SEO, as well as basic html code, you should also know more about some of the theories which are good for site operations to ensure that the site can be long-term, stable. 1. Law of 250 Girard thinks every person knows at least 250 people. If you win the goodwill of a customer, it means you win the goodwill of 250 individuals; Conversely, if you off...

   Website management,Rules     2012-09-13 20:55:50

  Handling Plugins In PHP

A common problem that developers face when building applications is how to allow the application to be "plug-able" at runtime.  Meaning, to allow non-core code to modify the way an application is processed at runtime.  There are a lot of different ways that this can be done, and lots of examples of it in real life.  Over a year ago, I wrote a StackOverflow Answer on this topic.  However, I think it deserves another look.  So let's look at some patterns and common im...

   PHP,Plugin,Handling     2012-03-11 13:18:39

  A strange behavior of printing struct with nested struct in GoLang

Normally when trying to print a struct , we would use %v to show all data of the struct. It will print the default format for each field in the struct. %v the value in a default format when printing structs, the plus flag (%+v) adds field names But recently we observed a strange behavior when printing a struct with nested struct which has a String() string implemented, the %v format prints an 'unexpected' output per our understanding.   Let's see the example snippet first. pa...

   PROGRAMMING,GOLANG     2018-10-29 09:59:49

  Tips of Drafting an R Markdown Document

When presenting the data summary and exploratory analysis, we used to copy a lot of tables, charts from Rstudio to PowerPoint, which makes the presentation preparation painful. It becomes essential for data scientists to make use of better reporting tools, such as R markdown, Jupyter notebook to prepare the analysis presentation in a more efficient and organized way. Of course, we want this to be reproducible! In this post, I would like to share some tips of using the right tools to draw tables,...

   R PROGRAMMING     2020-11-01 23:09:45

  Ways to undo wrong Git operations

While using Git to version code, programmers would inevitably perform some invalid operations which are not expected. Sometimes it's difficult to deal with this kind of awkward situations. If the programmer chooses to undo the operation, the programmer needs to bear the risk of deleting something which is not supposed to be deleted if the undo is done improperly. If the programmer leaves it as is, the file needs to be updated again manually with a new commit. In this post, we will try to pr...

   GIT,GIT COMMIT,GIT RESET     2018-07-07 03:28:21