Thursday, March 05, 2015

Angular 2: AtScript == TypeScript (!)

Microsoft And Google Collaborate On Angular 2 Framework, TypeScript Language | TechCrunch
"Microsoft and Google are working together to help make Angular 2 — the next (and somewhat controversial) version of Google’s JavaScript web app framework — better.

Angular has been using its own AtScript superset of Microsoft’s TypeScript for a while now. TypeScript is Microsoft’s attempt at extending JavaScript with features like type annotations, generics and modules. Going forward, the two languages will converge. Angular 2 will be written in TypeScript and developers will be able to write their Angular 2 applications in this language,too."

Slides from this ng-conf 2015 presentation

Note: the slides are web based, using SVG :)

ng-conf 2015 - The World's Original Angular Conference

Run Flash and Silverlight on JavaScript

JavaScript Has Won: Run Flash with Mozilla Shumway and Develop Silverlight in JS with Fayde - Scott Hanselman

The Mozilla Project "Shumway"
"Shumway is in a race to stay relevant as Flash fades from the web, but there will always be a long-tail of Flash content that would/will be lost when Adobe or browsers stop supporting the Flash plugin."

"At the same time, there's The Fayde project. Also Open Source, Fayde also compiles to JavaScript. But Fayde transforms Silverlight into HTML5 Canvas and JavaScript! It's an implementation of a XAML engine in JS."

7 Habits of Highly Effective Software Developers (The Simple Programmer Test)

The Joel Test Updated For Programmers by John Sonmez @ SimpleProgrammer
(The Simple Programmer Test)
  1. "Can you use source control effectively?
  2. Can you solve algorithm-type problems?
  3. Can you program in more than one language or technology?
  4. Do you do something to increase your education or skills every day?
  5. Do you name things appropriately?
  6. Can you communicate your ideas effectively?
  7. Do you understand basic design patterns?
  8. Do you know how to debug effectively?
  9. Do you test your own code?
  10. Do you share your knowledge?
  11. Do you use the best tools for your job?
  12. Can you build an actual application?"
(podcast interview with John Sonmez Soft Skills - MS Dev Show Podcast)

The Joel Test: 12 Steps to Better Code - Joel on Software by by Joel Spolsky
  1. "Do you use source control?
  2. Can you make a build in one step?
  3. Do you make daily builds?
  4. Do you have a bug database?
  5. Do you fix bugs before writing new code?
  6. Do you have an up-to-date schedule?
  7. Do you have a spec?
  8. Do programmers have quiet working conditions?
  9. Do you use the best tools money can buy?
  10. Do you have testers?
  11. Do new candidates write code during their interview?
  12. Do you do hallway usability testing?"

Could those 12 recommendations be mapped to "7 habits of highly effective programmers?"
Here is my attempt...

  • Be Proactive (anticipatory, responsible, response-able, not just "reactive")
    • use source control, name appropriately, 
  • Begin with the End in Mind (envision future)
    • know algorithms, design patterns, 
  • Put First Things First (urgent / important quadrants)
    • use good tools, testing, debugging,
  • Think Win-Win (mutually beneficial agreements)
    • do teaching, 
  • Seek First to Understand, Then to be Understood
    • communicate effectively,
  • Synergize (combine the strengths)
    • create apps,
Continuous Improvements
  • Sharpen the Saw (learning, physical and mental renewal)
    • keep learning, multiple languages, 

image/svg+xml 1. Be Proactive 3. FirstThings First 4. ThinkWin-Win 5. Seekto Understand 6.Synergize 7. SharpenThe Saw 2. Begin with the Endin Mind Source ControlClean Code Design PatternsAlgorithms Tools, Testing, Debugging Keep Learning,Languages Sharing,Teaching CommunicateEffectively CreateApps

As most of the tings on internet, similar ideas are already presented before, but not this simple and visual :)