Upgrade to Pro — share decks privately, control downloads, hide ads and more …

from (q)Basic to Azure

cherhan
April 25, 2015

from (q)Basic to Azure

Do you still remember Gorilla, Nibbles that used to be our favourite game backed in the MS-DOS time? How does learning structured programming, object-oriented programming affects my thinking as a programmer and software engineer today? For the past decades, what has changed and what hasn't ? You'll find the answers in my presentation here at 2015 Global Azure Bootcamp Kuala Lumpur.

cherhan

April 25, 2015
Tweet

More Decks by cherhan

Other Decks in Technology

Transcript

  1. About Myself •  25 years programming – Generalist, Data Guy,

    Hacker •  PhD in Big Data •  Director – MaGIC Academy •  MCAD, MCP, MOUS, MOE
  2. Key Takeaways •  Historical background of where we are now.

    •  How I progress in programming career (without much specialization). •  How does these experiences shape me who I am today and how I used them in the startup world. Feel  Free  to  Ask  QUESTIONS!  
  3. Once upon a time…. When apple is fruit, berry is

    fruit, python is snake and GUI is ghost
  4. Structured Programming •  Top down approach •  Divide long program

    into subs (functions) •  Black box. •  Self contained. •  Sounds familiar? •  Really focus on process and logical flow.
  5. Workstation @ 2015 •  OSX (Pre-installed) •  Sublime 2, Textmate,

    VIM •  Photoshop •  iTunes •  Slack •  MS-Office •  Bootcamp (to run VS.NET) •  And many more…: •  Alfred •  Spotify •  Chrome / Firefox •  VMWare / Parallele
  6. Workstation @ 1990 •  MS-DOS (a few copies) •  BASIC

    •  Others: •  PrintMaster •  Print Shop Deluxe •  Wordstar / WordPerfect •  Lotus 1-2-3 •  dBase •  E-Tian
  7. BASIC Programming •  Acronym for Beginner's All-purpose Symbolic Instruction Code

    •  PC-DOS vs MS-DOS •  Structured programming •  No IDE, pure text editor •  Microsoft released its own version QBASIC
  8. Object Oriented Programming •  Designed to focus on objects. • 

    Bottom-up approach •  Works directly on data •  Generalization •  Polymorphism, inheritance, etc. •  Less programming problem, more “data” problem.
  9. .NET Stacks •  VB.NET (short while), C#, LINQ •  WPF

    (a bit) •  WCF, Socket programming •  Windows Phone Programming
  10. Microsoft Excel •  Microsoft Office Expert •  Test your skills

    on solving real world problems (using Excel functions) •  Macro •  VB Scripts
  11. Databases (Access, SQL, NoSQL) •  Information overloads, everything is about

    data. •  Data needs to be stored (somewhat in a database format) •  FAT •  Registry •  SQL Language didn’t evolve much for the past decades. •  Key concepts stay (indexing, sorting) •  Tables, Rows, Columns, Normalization.
  12. Web Programming •  CGI / Perl •  Try to learn

    HTML •  Hard to get books / tutorials •  View source, hack javascripts •  Tripod, Geocities •  ASP, ASP .NET (didn’t really go down PHP path) •  HTML5, CSS3, Javascript •  Tried mootools, prototype, jQuery •  Always follow the mainstream (good community support, culture influence)
  13. Cloud Computing •  Virtual Machines, Server Farm, Norton Ghost • 

    Project involvement with different tools •  MATLAB •  R •  Hadoop, MapReduce •  High Performance Computing •  Azure
  14. Where we are today? •  I “accidentally” built myself as

    a “T-shape” programmer •  Jack of All Trades, Master of one (or some) •  C -> Objective C, Java -> Android •  COM+ -> Service Oriented Architecture -> Cloud •  BASIC -> VB -> VBScripts •  dBase SQL -> Access -> Oracle, PostGres, etc. •  Flash animation -> HTML5, CSS Animation •  And the list goes on….
  15. On Startups… •  Shortage of talents (UI / UX Designers,

    Coders, Engineers, etc.) •  We need more hackers who can eventually become technical co-founders (they might not be the best product manager) •  No point arguing on the platform, language choice etc. •  Google •  Facebook •  Twitter •  StackOverflow
  16. Fill  in  evalua1on  forms  and  win  prizes! •  Go  to

     h5p://malaysia.azurebootcamp.net/  to   access  links  to  online  evaluaIon  forms   •  Direct  link  to  this  session’s  evaluaIon  form:   h5p://www.instant.ly/s/Hs9wB   •  Please  check  with  registraIon  counter  for  your   parIcipant  ID   •  Winner  of  each  session  will  be  announced   aUer  lunch  break,  aUernoon  coffee  break  and   during  closing   •  Winner  then  proceed  to  registraIon  counter   to  draw  prizes  
  17. Please share our “little” event on the WWW by any

    means Use the HASHTAG #GLOBALAZURE extensively