background preloader

Good Program Design

Good Program Design
When does the course begin? This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! How much does this cost? It’s completely free! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Learn actively! Related:  computer Science

Intro to Theoretical CS (Algo Complexity) When does the course begin? This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! How much does this cost? It’s completely free! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Learn actively!

Intro to Computer Science Class Online (CS101) When does the course begin? This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Learn actively!

Anki - powerful, intelligent flashcards Software Development Process Software Engineering: Concepts and Practice Course Creator and Instructor Course Developer and Teaching Assistant Sarah SpikesCourse Developer, Lead Teaching Assistant Overview This course provides an in-depth study of the process of developing software systems, including the use of software processes in actual product development, techniques used to ensure quality of the software products and maintenance tasks performed as software evolves. Prerequisites Students should be familiar with at least one programming language (Java strongly preferred) and with basic software engineering concepts. If you answer "no" to any of the following questions, it may be beneficial to refresh your knowledge of this material prior to taking CS 6300: 1. To gain an understanding of a typical CS 6300 project, please read the description of our Mobile Android App for Managing TODO Lists assignment. Grading You will receive grades through T-Square. You will submit your projects directly through the Udacity site.

Mooc « décoder le code » Software Architecture and Design Course Creators and Instructors Overview Software Architecture and Design will provide students with the principles and concepts involved in the analysis and design of large software systems. The learning objectives for the course are the following: Understand and apply object-oriented design techniquesDevelop and evaluate software architecturesSelect and use appropriate architectural stylesSelect and use appropriate software design patternsExpress the specifications and design of an application using UMLSpecify parts of the design using a formal design language (OCL) View the CS 6310 - Software Architecture and Design course syllabus for more detail. Prerequisites To undertake this course you should either have successfully taken an undergraduate software engineering course or CS 6300. If you answer "no" to any of the following questions, it may be beneficial to refresh your knowledge of this material prior to taking CS 6310: 1. Grading Required Course Readings Minimum Technical Requirements

Que faire quand votre site/idée marche et que vous n'êtes pas DevOps? => YDD (Yolo Driven Development) - Technique - Pragmatic Entrepreneurs - Le forum des entrepreneurs pragmatiques L'histoire du gars qui à fait VDM.Amusant et intéressant(enfin moi j'ai trouvé sa intéressant) à la fois. Vous allez voir ce qu'est le YOLO Driven Développement. La leçon que j'en retiens et que lui même fait c'est que le code n'a pas besoin d'être une cathédrale hyper bien fignolé et tout. À la base un blog sans prétention, VDM (viedemerde.fr) est devenu en quelques semaines un des premiers sites de divertissement français. J'expliquerai mon retour d'expérience de ces 7 dernières années avec mes bons choix techniques (en PHP mais aussi dans l'infrastructure Web en général) mais aussi mes erreurs de DevOps autodidacte. VDM, DevOps malgré moi. - Maxime Valette #forumphp

Programming Languages: Building A Web Browser When does the course begin? This class is self paced. You can begin whenever you like and then follow your own pace. It’s a good idea to set goals for yourself to make sure you stick with the course. How long will the course be available? This class will always be available! How do I know if this course is for me? Take a look at the “Class Summary,” “What Should I Know,” and “What Will I Learn” sections above. Can I skip individual videos? Yes! How much does this cost? It’s completely free! What are the rules on collaboration? Collaboration is a great way to learn. Why are there so many questions? Udacity classes are a little different from traditional courses. What should I do while I’m watching the videos? Learn actively!

La programmation pour les non-programmeurs - Rue89 - L'Obs Par Rémi Sussan le 24/05/11 | 10 commentaires | 13,345 lectures | Impression Programmer, c’est difficile : penser logiquement, par étapes, sans en sauter aucune et en envisageant toutes les possibilités de ses actions demande une grande attention, une grande rigueur. Mais à ces complications s’ajoute encore l’apprentissage d’une syntaxe extrêmement ardue, qui ne supporte pas la moindre faute, à la virgule près. Sans compter que ladite syntaxe nous prend à rebrousse-poil. Un autre obstacle, peut-être moins évident, est l’absence de résultats immédiatement gratifiants pour les débutants. Les langages visuels L’une des premières tâches de simplification consisterait donc à mettre au point des langages sans possibles erreurs de syntaxe. Un des produits phares du genre, Alice, élaboré à l’université de Carnegie Mellon, permet de créer très rapidement des petits films interactifs en 3D. Les enfants du Smalltalk Kay ne renonça pas pour autant à faire du Smalltalk un langage “pour tous”.

Software Testing Methodologies Software Testing How to Make Software Fail Intermediate Approx. 1 month Assumes 6hr/wk (work at your own pace) Join 67,785 Students View Trailer Course Summary When writing software, destruction can be just as valuable as creation. Why Take This Course? This course will teach you how to think like a software tester, how to find bugs in code earlier, and write better code. Prerequisites and Requirements Programming experience is required. See the Technology Requirements for using Udacity. What Will I Learn? Syllabus Lesson 1: Domains, Ranges, Oracles, and Kinds of Testing How to think about the different elements of software testing Lesson 2: Code Coverage How to find parts of a program that need more testing Lesson 3: Random Testing How to automatically generate test cases that break code in unexpected ways Lesson 4: Advanced Random Testing How to engineer a sophisticated random test case generator Lesson 5: Consequences Lesson 6: Conclusion Enroll in Course Access Course Materials Free What you get Stuck? Udacity

Templates Suck, Here's Our Lean Startup Experiment Template by Every few weeks, someone asks me if there’s a template that they should use to define their lean startup experiments…and I say no. I’m not a big fan of templates in the broad sense of a one size fits all template to define experiments regardless of the context. I am a huge fan of having a repeatable process. We (TriKro LLC & Lean Startup Circle) do use templates that work well for us. That doesn’t necessarily mean they’ll work well for someone else. Templates are often a means of asserting order over the innovation process in order to measure team velocity in an overly stringent way before it’s appropriate or necessary to do so. So in an effort to satisfy the requests and not give overly broad advice, here’s the template we use and why we designed it this way. If you’d like to cut to the chase, you can download the template below. The Basics Any template, framework, or checklist is there to provide us with a repeatable process. The basic criteria for a lean startup experiment is always: Metric

Introduction to FP with Haskell Broadly speaking, functional programming is a style of programming in which the primary method of computation is the application of functions to arguments. Among other features, functional languages offer a compact notation for writing programs, powerful abstraction methods for structuring programs, and a simple mathematical basis that supports reasoning about programs. Functional languages represent the leading edge of programming language design, and the primary setting in which new programming concepts are introduced and studied. All contemporary programming languages such as Hack/PHP, C#, Visual Basic, F#, C++, JavaScript, Python, Ruby, Java, Scala, Clojure, Groovy, Racket, … support higher-order programming via the concept of closures or lambda expressions. LICENSEThe course materials of this course are Copyright Delft University of Technology and are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike (CC-BY-NC-SA) 4.0 International License.

Related: