C Is Not Dead Yet

Embed Size (px)

DESCRIPTION

C is not a dead programming language, and it should seriously be considered a prime candidate for a new programming language to lean by any who do not already know it. This was my presentation for SpringBeta 2013.

Citation preview

  • 1. CC (Its Not Quite Dead Yet)(Its Not Quite Dead Yet)By Charles Southerland

2. Differentlanguagessolvethesameproblemsindifferentways. BylearningseveraldifferentBylearningseveraldifferentapproaches,youcanhelpbroadenyourthinkingandapproaches,youcanhelpbroadenyourthinkingandavoidgettingstuckinarut.avoidgettingstuckinarut.- The Pragmatic Programmer 3. You should try tolearn as manydifferent kinds ofprogramminglanguages aspossible. 4. Dennis Ritchie1941 - 2011 5. It has always been among the most commonlyused programming languages... 6. ...but it gets a lot of flack. 7. Cs lack of automatic memory management andlack of type safety often lead to memory issues. 8. Since the programmer frees their own memory,theres no waiting for the garbage collector. 9. C doesnt have built-in strings, stacks, associativearrays, iterators, garbage collection, etc. 10. C generally doesnt suffer from language-levelvulnerabilities (like the recent hash-collisionissues in Java, PHP, Python, Ruby, etc.) 11. Object-oriented programming in C can be clunky. 12. Theproblemwithobject-orientedlanguagesistheyvegotallthisimplicitenvironmentthattheycarryaroundwiththem.Youwantedabananabutwhatyougotwasagorillaholdingthebananaandtheentirejungle.Youwantedabananabutwhatyougotwasagorillaholdingthebananaandtheentirejungle.- Joe Armstrong, creator of Erlang 13. The lack of a nice OOP syntax makes GUIprogramming in C a painful experience. 14. Cs procedural syntax is just fine for markup. 15. C needs to be compiled. 16. C compilers have become very proficient atoptimizing code. 17. C isnt being used as much outside of embeddedand systems programming. 18. But theres no reason it couldnt be. 19. Forty years of tools, documentation, libraries, andbest practices have to count for something, right? 20. The world around you runs on C.The world around you runs on C.It is up to you to program that world.It is up to you to program that world.