SlideShare ist ein Scribd-Unternehmen logo
1 von 36
How to be a Hacker
101!
by Karan Pratap Singh
Geek, hacker, open source, linux and android
enthusiast, gamer, trying to be an entrepreneur
Some Common Myths:
1) Computer Science is easy.
2) You don’t really need to study in college.
3) You need to study from IIT to get a very good
job in Computer Science.
4) On campus placements are the best!
5) .NET/C# is an awesome thing to learn and
Java is dead :P
6) iOS is better than Android.
Some Common Myths:
7) Overnight successes(Angry Birds(52nd),
Twitter(5))
8) Computer Science is just programming,
programming and programming!
9) Books are for losers!
10) Any other myths you have heard?
What hardware should I use?
1. Get a keyboard, typing on the laptop’s
keyboard will make you sore!
2. Using an external 22inch monitor is a great
idea! Larger screen space means more
productivity!
3. Use an efficient mouse with adjustable dpi!
Touchpads slow you down!
What hardware should I use?
4. Get a decent pair of headphones, as
sometimes you need music to focus!
5. Having fast broadband internet access is a
MUST! Without internet you have lost half of
your productivity!
6. Check out what professionals prefer to use
on usesthis.com
What hardware should I use?
7. Get a tablet or ebook reader, as it will help
you a LOT!
8. An Android mobile is the best smartphone
you can have, but go for a decent one(15k +)
9. Try to get a laptop with an Anti-Glare(or
matte finish) screen and as high ppi as
possible!
What programming Languages should I
learn?
Follow this order for best results:
1) Python(Why high level languages matter?
Because of top-down programming approach!
Okay….wait a minute, what are high level
languages?)
2) Java
3) C/C++
4) Web languages like HTML, CSS and
JavaScript!
Totally new to computers?
1. The CS 101 primer by one of Stanford’s best
teachers! Nick Parlante,
https://www.coursera.org/course/cs101
2. Another CS 101 Introduction course to do
After you know Python basics,
https://www.udacity.com/course/cs101
Python Resources
1. Google Python Class,
https://developers.google.com/edu/python/
Contains Video Lectures and assignments as
well as written notes on the topics covered in
the lectures!
2. How to think like a Computer Scientist!
http://www.greenteapress.com/thinkpython/
Python Resources
3. Python class on Coursera,
https://www.coursera.org/course/interactivepyth
on
4. How to think like a Computer Scientist!(Free
Ebook!)
http://www.greenteapress.com/thinkpython/
Beginner friendly! :)
Python Resources
5. A slightly more advanced Python book,
Learning Python http://goo.gl/S9nD8i
6. Once you are pretty familiar with python and
basic programming, this intermediate course by
Peter Norvig is awesome,
https://www.udacity.com/course/cs212
Java Resources
1. Stanford Java Class by Mehran Sahami,
http://goo.gl/lFIzB
Excellent funny teacher, really nice introduction
to programming and top down design and really
cool assignments! :)
The libraries used in this course can be found
at http://www-cs-
faculty.stanford.edu/~eroberts/jtf/
Java Resources
2. Head First Java, great book!
http://goo.gl/03Gys9
3. Another nice online course,
https://www.udacity.com/course/cs046
C Resources
1.The one and only, The C Programming
Language by Dennis Ritchie!(Not beginner
friendly but totally worth your time!)
http://goo.gl/Wf8jUC
C++ Resources
1. Programming Abstractions course by
Stanford, teaches C++ as well as Data
Structures and Algorithms,
http://see.stanford.edu/see/lecturelist.aspx?coll
=11f4f422-5670-4b4c-889c-008262e09e4e
2. And an awesome book C++ Primer Plus,
http://goo.gl/MSt8NX
Web Development Resources
1. For HTML 5, this book is a pure Gem,
http://diveintohtml5.info/
2. Learn web development, by the founder of
Reddit, https://www.udacity.com/course/cs253
3. Want a more HTML 5 focussed course? You
got it, taught by Google Engineers,
https://www.udacity.com/course/cs255
Web Development Resources
4. For Javascript, JavaScript: The Good Parts
by Douglas Crockford(works at Yahoo, expert
at Javascript). http://goo.gl/IN5jZd
5. CSS, many web tutorials online and CSS:
The Missing Manual by David Sawyer
McFarland. http://goo.gl/5pgpml
Which IDE should I use?
1. It depends a lot on your personal preference.
2. Java → Eclipse
C/C++ → Codeblocks
Python → IDLE, IPython
Web → Bugzilla, Chrome Developer
Console?
3. Vim, Emacs, or Notepad++?
Which OS should I use?
1. Linux is your best friend! It makes you a
more intelligent computer user!(I recommend
Ubuntu or Linux Mint 15)
2. Mac OS is also good, but has some slight
quirks.(Getting traditional GNU software is an
issue.)
3. Learning how to use the terminal effectively
is very helpful! :)
Important online resources?
1. StackOverflow
2. Reddit
3. hacker news!
4. Quora.
Important online resources?
5. Coursera
6. Udacity
7. Code Academy
8. XDA Developers
9. TechCrunch, Verge
Important online resources?
10. IRC channels and mailing lists!
11. Staford E-Corner! and TED Talks!
12. Paul Graham’s Blog!(and other awesome
people write blogs too :P )
13. xkcd, The Oatmeal!
Video Time!
We are 50% done :)
Let’s all wake up by watching some
awesome videos!
The best way to learn coding?
1. MUST READ, Teach yourself coding in 10
years by Peter Norvig, http://norvig.com/21-
days.html
2. Learn by doing! Why coding projects are
critical!(e.x. backrub, Pulse, Apple, hotmail!)
3. Collaborate with other coders who are more
experienced than you. GSoC, Open Source :P
Why learn more than 1 language?
Because in real life, most complex programs
are polyglots!
Python and C/C++ go great together!
MySql is combined with many langauges to
allow database handling!
Examples of real life polyglots
Android: The Android operating system
consists of 12 million lines of code including 3
million lines of XML, 2.8 million lines of C, 2.1
million lines of Java, and 1.75 million lines of
C++.
LibreOffice: LibreOffice use C, C++ and Java.
HOW to study for college exams?
For sessionals: You just need to study 2 to 3
days before the sessionals
For Finals: 1 week before the finals begin is
more than enough.
Provided you were attentive in the class :P
Good Percentage/Grade: 75% and above is
more than sufficient
Try to be T-Shaped
Other Skills
1. Learn to Touch Type, use a typing tutor
software!
2. Learn to network! It will take you far in life :P
3. Learn to follow a schedule! The secret recipe
of most successful people.
Other Important stuff
1) How to design your programs? Top Down
Thinking?
2) Data Structures and Algorithms?
https://www.coursera.org/course/algo and
https://www.coursera.org/course/algo2
3) Design Patterns? Head first design patterns,
http://goo.gl/1X2WMW
Other Important stuff
4) Software Engineering? what the hell is that?
Code Complete 2 is a MUST READ for
beginners and experts alike,
http://goo.gl/TC0Nf6
Head First Software Development is a nice
primer on software engineering,
http://goo.gl/dJVNmV
Other Important stuff
5) Why it is important to have good English
skills?
6) Why you should be paying attention always!
7) Are some people more lucky than others?
How to make yourself more lucky? Ex. find the
number of images in the newspaper!
Other Important stuff
7) Importance of networking with Seniors! and
other knowledgeable persons you meet.
8) Why it is important to read about failures too!
“Wise men learn by other men's mistakes, fools
by their own.”
--H. G. Bohn
Other Important stuff
9) Use college to accelerate yourself in the
future! Because when you are in the future, you
see limitless possibilities!
Time for some ZEN!
To follow the path,
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
Thank You ;)
You can reach me via
pulug@googlegroups.com
Follow me on twitter: @kps_foo

Weitere ähnliche Inhalte

Andere mochten auch

What A Perfect Ethical Hacker!
What A Perfect Ethical Hacker!What A Perfect Ethical Hacker!
What A Perfect Ethical Hacker!Aung Khant
 
Think Like A Growth Hacker
Think Like A Growth HackerThink Like A Growth Hacker
Think Like A Growth HackerTim Homuth
 
Understanding Cyber Crime and Cyber Security by Sajibe Kanti
Understanding Cyber Crime and Cyber Security by Sajibe Kanti Understanding Cyber Crime and Cyber Security by Sajibe Kanti
Understanding Cyber Crime and Cyber Security by Sajibe Kanti SajibeKanti
 
Hackers and Hacking a brief overview 5-26-2016
Hackers and Hacking a brief overview 5-26-2016Hackers and Hacking a brief overview 5-26-2016
Hackers and Hacking a brief overview 5-26-2016Gohsuke Takama
 
Hacking & its types
Hacking & its typesHacking & its types
Hacking & its typesSai Sakoji
 

Andere mochten auch (12)

What A Perfect Ethical Hacker!
What A Perfect Ethical Hacker!What A Perfect Ethical Hacker!
What A Perfect Ethical Hacker!
 
Brain Hacking 101
Brain Hacking 101Brain Hacking 101
Brain Hacking 101
 
Ethical hacking
Ethical hackingEthical hacking
Ethical hacking
 
How to Become a Hacker?
How to Become a Hacker?How to Become a Hacker?
How to Become a Hacker?
 
Hacking For Innovation Delhi
Hacking For Innovation DelhiHacking For Innovation Delhi
Hacking For Innovation Delhi
 
So You Want to be a Hacker?
So You Want to be a Hacker?So You Want to be a Hacker?
So You Want to be a Hacker?
 
Think Like A Growth Hacker
Think Like A Growth HackerThink Like A Growth Hacker
Think Like A Growth Hacker
 
Understanding Cyber Crime and Cyber Security by Sajibe Kanti
Understanding Cyber Crime and Cyber Security by Sajibe Kanti Understanding Cyber Crime and Cyber Security by Sajibe Kanti
Understanding Cyber Crime and Cyber Security by Sajibe Kanti
 
Hackers and Hacking a brief overview 5-26-2016
Hackers and Hacking a brief overview 5-26-2016Hackers and Hacking a brief overview 5-26-2016
Hackers and Hacking a brief overview 5-26-2016
 
Ethical hacking presentation
Ethical hacking presentationEthical hacking presentation
Ethical hacking presentation
 
Hacking ppt
Hacking pptHacking ppt
Hacking ppt
 
Hacking & its types
Hacking & its typesHacking & its types
Hacking & its types
 

Ähnlich wie Advice for Computer Science freshers!

A Technical Driven Seminar
A Technical Driven SeminarA Technical Driven Seminar
A Technical Driven SeminarDeepak Chawla
 
DIY Applied Machine Learning
DIY Applied Machine LearningDIY Applied Machine Learning
DIY Applied Machine LearningTarek Hoteit
 
Introduction to coding and Python
Introduction to coding and PythonIntroduction to coding and Python
Introduction to coding and PythonHaris NP
 
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningApresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningArthur Emanuel
 
Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Thoughtful Minds Web Services Pvt. Ltd,
 
Python_basics_tuples_sets_lists_control_loops.ppt
Python_basics_tuples_sets_lists_control_loops.pptPython_basics_tuples_sets_lists_control_loops.ppt
Python_basics_tuples_sets_lists_control_loops.pptVGaneshKarthikeyan
 
Lesson 301 26 nov13-1500-ay
Lesson 301 26 nov13-1500-ayLesson 301 26 nov13-1500-ay
Lesson 301 26 nov13-1500-ayCodecademy Ren
 
Welcome to Python Programming.pptx
Welcome to Python Programming.pptxWelcome to Python Programming.pptx
Welcome to Python Programming.pptxUmmeSalmaM1
 
FEC2017-Introduction-to-programming
FEC2017-Introduction-to-programmingFEC2017-Introduction-to-programming
FEC2017-Introduction-to-programmingHenrikki Tenkanen
 
What is Python? (Silicon Valley CodeCamp 2015)
What is Python? (Silicon Valley CodeCamp 2015)What is Python? (Silicon Valley CodeCamp 2015)
What is Python? (Silicon Valley CodeCamp 2015)wesley chun
 
Python @ PiTech - March 2009
Python @ PiTech - March 2009Python @ PiTech - March 2009
Python @ PiTech - March 2009tudorprodan
 
Mastering python lesson1
Mastering python lesson1Mastering python lesson1
Mastering python lesson1Ruth Marvin
 
Python programming
Python programmingPython programming
Python programmingMegha V
 

Ähnlich wie Advice for Computer Science freshers! (20)

Is Python still production ready ? Ludovic Gasc
Is Python still production ready ? Ludovic GascIs Python still production ready ? Ludovic Gasc
Is Python still production ready ? Ludovic Gasc
 
A Technical Driven Seminar
A Technical Driven SeminarA Technical Driven Seminar
A Technical Driven Seminar
 
DIY Applied Machine Learning
DIY Applied Machine LearningDIY Applied Machine Learning
DIY Applied Machine Learning
 
Introduction to coding and Python
Introduction to coding and PythonIntroduction to coding and Python
Introduction to coding and Python
 
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine LearningApresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
 
Workshop 1 october 25
Workshop 1 october 25Workshop 1 october 25
Workshop 1 october 25
 
Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...Computer science and engineering assignments: lesser known tools that you sho...
Computer science and engineering assignments: lesser known tools that you sho...
 
Rapid prototyping
Rapid prototypingRapid prototyping
Rapid prototyping
 
Introduction to Coding
Introduction to CodingIntroduction to Coding
Introduction to Coding
 
Why learn python in 2017?
Why learn python in 2017?Why learn python in 2017?
Why learn python in 2017?
 
Python_basics_tuples_sets_lists_control_loops.ppt
Python_basics_tuples_sets_lists_control_loops.pptPython_basics_tuples_sets_lists_control_loops.ppt
Python_basics_tuples_sets_lists_control_loops.ppt
 
Lesson 301 26 nov13-1500-ay
Lesson 301 26 nov13-1500-ayLesson 301 26 nov13-1500-ay
Lesson 301 26 nov13-1500-ay
 
python training.docx
python training.docxpython training.docx
python training.docx
 
Welcome to Python Programming.pptx
Welcome to Python Programming.pptxWelcome to Python Programming.pptx
Welcome to Python Programming.pptx
 
Learning to code in 2020
Learning to code in 2020Learning to code in 2020
Learning to code in 2020
 
FEC2017-Introduction-to-programming
FEC2017-Introduction-to-programmingFEC2017-Introduction-to-programming
FEC2017-Introduction-to-programming
 
What is Python? (Silicon Valley CodeCamp 2015)
What is Python? (Silicon Valley CodeCamp 2015)What is Python? (Silicon Valley CodeCamp 2015)
What is Python? (Silicon Valley CodeCamp 2015)
 
Python @ PiTech - March 2009
Python @ PiTech - March 2009Python @ PiTech - March 2009
Python @ PiTech - March 2009
 
Mastering python lesson1
Mastering python lesson1Mastering python lesson1
Mastering python lesson1
 
Python programming
Python programmingPython programming
Python programming
 

Kürzlich hochgeladen

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Kürzlich hochgeladen (20)

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Advice for Computer Science freshers!

  • 1. How to be a Hacker 101! by Karan Pratap Singh Geek, hacker, open source, linux and android enthusiast, gamer, trying to be an entrepreneur
  • 2. Some Common Myths: 1) Computer Science is easy. 2) You don’t really need to study in college. 3) You need to study from IIT to get a very good job in Computer Science. 4) On campus placements are the best! 5) .NET/C# is an awesome thing to learn and Java is dead :P 6) iOS is better than Android.
  • 3. Some Common Myths: 7) Overnight successes(Angry Birds(52nd), Twitter(5)) 8) Computer Science is just programming, programming and programming! 9) Books are for losers! 10) Any other myths you have heard?
  • 4. What hardware should I use? 1. Get a keyboard, typing on the laptop’s keyboard will make you sore! 2. Using an external 22inch monitor is a great idea! Larger screen space means more productivity! 3. Use an efficient mouse with adjustable dpi! Touchpads slow you down!
  • 5. What hardware should I use? 4. Get a decent pair of headphones, as sometimes you need music to focus! 5. Having fast broadband internet access is a MUST! Without internet you have lost half of your productivity! 6. Check out what professionals prefer to use on usesthis.com
  • 6. What hardware should I use? 7. Get a tablet or ebook reader, as it will help you a LOT! 8. An Android mobile is the best smartphone you can have, but go for a decent one(15k +) 9. Try to get a laptop with an Anti-Glare(or matte finish) screen and as high ppi as possible!
  • 7. What programming Languages should I learn? Follow this order for best results: 1) Python(Why high level languages matter? Because of top-down programming approach! Okay….wait a minute, what are high level languages?) 2) Java 3) C/C++ 4) Web languages like HTML, CSS and JavaScript!
  • 8. Totally new to computers? 1. The CS 101 primer by one of Stanford’s best teachers! Nick Parlante, https://www.coursera.org/course/cs101 2. Another CS 101 Introduction course to do After you know Python basics, https://www.udacity.com/course/cs101
  • 9. Python Resources 1. Google Python Class, https://developers.google.com/edu/python/ Contains Video Lectures and assignments as well as written notes on the topics covered in the lectures! 2. How to think like a Computer Scientist! http://www.greenteapress.com/thinkpython/
  • 10. Python Resources 3. Python class on Coursera, https://www.coursera.org/course/interactivepyth on 4. How to think like a Computer Scientist!(Free Ebook!) http://www.greenteapress.com/thinkpython/ Beginner friendly! :)
  • 11. Python Resources 5. A slightly more advanced Python book, Learning Python http://goo.gl/S9nD8i 6. Once you are pretty familiar with python and basic programming, this intermediate course by Peter Norvig is awesome, https://www.udacity.com/course/cs212
  • 12. Java Resources 1. Stanford Java Class by Mehran Sahami, http://goo.gl/lFIzB Excellent funny teacher, really nice introduction to programming and top down design and really cool assignments! :) The libraries used in this course can be found at http://www-cs- faculty.stanford.edu/~eroberts/jtf/
  • 13. Java Resources 2. Head First Java, great book! http://goo.gl/03Gys9 3. Another nice online course, https://www.udacity.com/course/cs046
  • 14. C Resources 1.The one and only, The C Programming Language by Dennis Ritchie!(Not beginner friendly but totally worth your time!) http://goo.gl/Wf8jUC
  • 15. C++ Resources 1. Programming Abstractions course by Stanford, teaches C++ as well as Data Structures and Algorithms, http://see.stanford.edu/see/lecturelist.aspx?coll =11f4f422-5670-4b4c-889c-008262e09e4e 2. And an awesome book C++ Primer Plus, http://goo.gl/MSt8NX
  • 16. Web Development Resources 1. For HTML 5, this book is a pure Gem, http://diveintohtml5.info/ 2. Learn web development, by the founder of Reddit, https://www.udacity.com/course/cs253 3. Want a more HTML 5 focussed course? You got it, taught by Google Engineers, https://www.udacity.com/course/cs255
  • 17. Web Development Resources 4. For Javascript, JavaScript: The Good Parts by Douglas Crockford(works at Yahoo, expert at Javascript). http://goo.gl/IN5jZd 5. CSS, many web tutorials online and CSS: The Missing Manual by David Sawyer McFarland. http://goo.gl/5pgpml
  • 18. Which IDE should I use? 1. It depends a lot on your personal preference. 2. Java → Eclipse C/C++ → Codeblocks Python → IDLE, IPython Web → Bugzilla, Chrome Developer Console? 3. Vim, Emacs, or Notepad++?
  • 19. Which OS should I use? 1. Linux is your best friend! It makes you a more intelligent computer user!(I recommend Ubuntu or Linux Mint 15) 2. Mac OS is also good, but has some slight quirks.(Getting traditional GNU software is an issue.) 3. Learning how to use the terminal effectively is very helpful! :)
  • 20. Important online resources? 1. StackOverflow 2. Reddit 3. hacker news! 4. Quora.
  • 21. Important online resources? 5. Coursera 6. Udacity 7. Code Academy 8. XDA Developers 9. TechCrunch, Verge
  • 22. Important online resources? 10. IRC channels and mailing lists! 11. Staford E-Corner! and TED Talks! 12. Paul Graham’s Blog!(and other awesome people write blogs too :P ) 13. xkcd, The Oatmeal!
  • 23. Video Time! We are 50% done :) Let’s all wake up by watching some awesome videos!
  • 24. The best way to learn coding? 1. MUST READ, Teach yourself coding in 10 years by Peter Norvig, http://norvig.com/21- days.html 2. Learn by doing! Why coding projects are critical!(e.x. backrub, Pulse, Apple, hotmail!) 3. Collaborate with other coders who are more experienced than you. GSoC, Open Source :P
  • 25. Why learn more than 1 language? Because in real life, most complex programs are polyglots! Python and C/C++ go great together! MySql is combined with many langauges to allow database handling!
  • 26. Examples of real life polyglots Android: The Android operating system consists of 12 million lines of code including 3 million lines of XML, 2.8 million lines of C, 2.1 million lines of Java, and 1.75 million lines of C++. LibreOffice: LibreOffice use C, C++ and Java.
  • 27. HOW to study for college exams? For sessionals: You just need to study 2 to 3 days before the sessionals For Finals: 1 week before the finals begin is more than enough. Provided you were attentive in the class :P Good Percentage/Grade: 75% and above is more than sufficient
  • 28. Try to be T-Shaped
  • 29. Other Skills 1. Learn to Touch Type, use a typing tutor software! 2. Learn to network! It will take you far in life :P 3. Learn to follow a schedule! The secret recipe of most successful people.
  • 30. Other Important stuff 1) How to design your programs? Top Down Thinking? 2) Data Structures and Algorithms? https://www.coursera.org/course/algo and https://www.coursera.org/course/algo2 3) Design Patterns? Head first design patterns, http://goo.gl/1X2WMW
  • 31. Other Important stuff 4) Software Engineering? what the hell is that? Code Complete 2 is a MUST READ for beginners and experts alike, http://goo.gl/TC0Nf6 Head First Software Development is a nice primer on software engineering, http://goo.gl/dJVNmV
  • 32. Other Important stuff 5) Why it is important to have good English skills? 6) Why you should be paying attention always! 7) Are some people more lucky than others? How to make yourself more lucky? Ex. find the number of images in the newspaper!
  • 33. Other Important stuff 7) Importance of networking with Seniors! and other knowledgeable persons you meet. 8) Why it is important to read about failures too! “Wise men learn by other men's mistakes, fools by their own.” --H. G. Bohn
  • 34. Other Important stuff 9) Use college to accelerate yourself in the future! Because when you are in the future, you see limitless possibilities!
  • 35. Time for some ZEN! To follow the path, look to the master, follow the master, walk with the master, see through the master, become the master.
  • 36. Thank You ;) You can reach me via pulug@googlegroups.com Follow me on twitter: @kps_foo