Skip to content

Latest commit

 

History

History
134 lines (77 loc) · 7.45 KB

tech-learnings-fb-group.md

File metadata and controls

134 lines (77 loc) · 7.45 KB

Putting down here the content I've shared in the facebook group "tech learnings" over the past 3 years, ish. This was for my cousins pursuing computer science. In the order they were posted, oldest first.

copied over most of the description/comments/remarks for each link from the group

This one has come in handy so many times. It has concise listing of things like "what's the condition to put in an if conditional for checking if a file exists?", common keywords/patterns etc. Very useful while programming shell.

Amazing reference. Straight usable answers to things like "how do I read input line-by-line in bash?" and much more. There's also a Bash Guide available there now.

Got this on Twitter. Haven't checked it out myself.

Summarizes quite well some of the reasons why I want you to program in a variety of languages and not be limited to merely C/C++/Java, which are taught at most colleges in India.

Pays to know this kind of sorting algorithm also exists. Maybe you want to do an implementation of Timsort!

Big word in web technologies these days.

Excellent collection of articles and reference material on this guy's site. Most of which are worthy of your attention.

Zines, articles, tutorials. Lots of great reference material by the amaze b0rk!

Salted passwords are a common practice. For example linuxes store user passwords as salted hashes.

Recall the tip I gave you about not saying "no account exists with this username" in the forgot password page. Instead printing a generic message like "if you have an account with us you will have received an email to reset your password". The same wisdom is applicable to login pages as well: "never tell the user if it was the username or password they got wrong. Always display a generic message like "Invalid username or password." This prevents attackers from enumerating valid usernames without knowing their passwords." These are tiny, but highly practical, details of security that you should build knowledge of, as you go along! :)

The course website contains a lot of useful reading. Most colleges in the country do not do Principles of Programming Languages like Dr. Choppella does. It's very highly recommended.

Check out the reference material section, order the books or find copies somehow. And then read the sections indicated in the lecture plan.

Contest they do every year. If you're into competitive coding, this is worth checking out.

Nice book. If you use a Linux machine, or virtualization, or are generally curious about how the network works, do check out. Not a very big book either.

Selection in GSoC is a big deal. It brings with it

  1. The opportunity to work with some really smart and driven people doing Open Source
  2. Exposure to how the Open Source ecosystem works
  3. A great achievement to add to your resume
  4. Good amounts of money (3-4 lakh INR)
  5. Foreign Trips, in case of certain organizations like GNOME, Mozilla etc. that have the money to pay for you to come meet everyone (such trips usually take you to Europe / USA) It is only open to college-going people. You have limited attempts!

Just to give you an idea...

If you dig functional programming, got to check this out. Similar to GSoC, but in Haskell.

Try applying for this. Good chance to meet with students from other parts of the country. Get an idea where you stand!

Some articles on Version Control

Nice product from one of my seniors at IIIT-H, Anshuman Singh. Helps ace coding interviews, and also gets you great job opportunities! Also on facebook

IBM Developerworks is a nice source of articles on various aspects of linux among other things. Do check out.

A nice coding practice site.

Worth a read if you apply for internships.

One of the more successful students sharing what she believes are good ways for a college-going student of computer science to spend her summers, and more.

Some nice material in there. Do read the Architecture Of Open Source Applications (AOSA) articles on any technologies you know about, or want to know about.

Gary Bernhardt telling you about Types. For free.

Nice article if you want a broad overview of what goes into making a current-day web application.

Lots of reading material on system design & architecture.