Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

12 Things Every Programmer Should Know

66,842 views

Published on

This presentation is about best practices, techniques, and attitudes of a professional software developer.

Published in: Education, Technology
  • Sex in your area is here: ❶❶❶ http://bit.ly/2Qu6Caa ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating for everyone is here: ❤❤❤ http://bit.ly/2Qu6Caa ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Making a living taking surveys at home! I have been a stay at home mom for almost 5 years and I am so excited to be able to still stay home, take care of my children and make a living taking surveys on my own computer! It's so easy to get started and I plan to make enough money each week so that my husband can actuallly quit his second job!!! Thank you so much! ▲▲▲ http://ishbv.com/goldops777/pdf
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating for everyone is here: ❤❤❤ http://bit.ly/2LaDVgK ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating direct: ♥♥♥ http://bit.ly/2LaDVgK ♥♥♥
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

12 Things Every Programmer Should Know

  1. 12 Things Every Programmer Should Know by Samnang Chhun Barcamppp 2010
  2. About Me • samnang.chhun@gmail.com • @samnangchhun • http://tech.wowkhmer.com • Ruby and Rails Developer • .NET Developer (MCTS) • Yoolk Inc. • Share Vision Team Core Member
  3. 1 Be Passionate • Love what you are doing • Be creative • Want to do it best • Better than yesterday
  4. 2 Love Your Codes • Write codes for human, but bad programmers write codes for machine • Every programmer loves to work with Clean Code
  5. 3 Version Control • Backup your codes • Tracking changes (who, what, when) • Work in parallel • Commit often • Never commit when your build fail
  6. 4 Read Codes • Before you become a good writer, you have to be a good reader • Day and day programmers working hours: 70% reading and 30% writing • Take notes on ideas or tricks of the author
  7. 5 Practice, Practice, Practice • Small exercises, isolated problems • Practice on outside company projects • Do your best as you can(no pressure) • Practice to become a master • CodeKata, Paring Tour, Fixing bugs in an OSS that you are using
  8. 6 Refactoring • Improve quality of your codes, without changing system behavior • Make it easy to understand, maintain, and extend • “Always check a module in cleaner than when you checked it out”, Uncle Bob • Intension-Revealing Names, Small Method, Compose Method, …
  9. 7 Follow Patterns and Best Practices • Object Oriented Design Principles • SOLID • GRASP • DRY • KISS • Don’t Tell Us • Design Patterns
  10. 8 TDD/BDD • Tests are specifications what the system does • Tests are your first user • Short development iteration • Is a design process • Write just enough codes to pass the tests
  11. 9 Automation • Make your manual tasks are automatable • Command line are your friend • Make a shortcut of your repeated tasks • Continuous Integration • Automation Deployment
  12. Understand 10 Your Domain • Domain-specific won’t be outdate soon, but technologies will • “You can’t creatively help a business until you know how it works.” Chad Fowler
  13. Continuous 11 Learning • You need to keep learning to stay marketable • “Be the worst,” Chad Fowler • Read books, blogs, Twitters feeds, and websites • Listen to podcasts • Sharpening your tools
  14. Participate in 12 Communities • A good way to learn something is to teach or speak about it • Join or start a study group or a local user group for a language, technology, or discipline you are interested in. • Contribute to OSS
  15. References
  16. Q&A

×