Last active
April 19, 2017 22:37
-
-
Save justinAurand/a19f0445fe2b40668042ad0512eb112a to your computer and use it in GitHub Desktop.
Notes from Philly ETE 2017
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
React Native | |
- Uses the component model, which means no finding elements | |
- Has both live and hot reload. Hot reload maintains state | |
- You can *skip* the app store process. Build the .jsbundle locally, deploy to OTA users, and user apps update on the spot | |
The Scaling Myth | |
- The Tyranny of Structurelessness -> look it up | |
- Conway's Law - Code org/structure ends up resembling team org/structure | |
C#/F# .NET Core | |
- Uninstalling is as easy as deleting the project folder. It's completely contained | |
- In the CLI, "dotnet restore" goes to NPM for the .NET libraries needed for the project you're working on | |
- Windows 10 runs Ubuntu natively | |
- CLI has a watcher much like PhantomJs, Angular, React, etc. | |
- VS Code intellisense is type specific and doesn't require a build to work | |
- utilizes the omnisharp service, which is intellisense as a service | |
- can be utilized by any IDE | |
- JetBrains Rider - .NET IDE competitor | |
Taking Agile Back | |
- Programming is for solving a problem. When you're not solving problems, you obsess over refining the technology | |
- "We don't have to settle for expediently cranking out horrible work betwen pointless meetings" -Tim Ottinger | |
- Why does agile fail? | |
- lack of experience with agile methods | |
- company philosphy or culture at odds with core agile values | |
- there's no time to learn agile | |
- Simplification - Reduce core priciples to 4 | |
- is this safe? | |
- will this make others awesome? | |
- will this help us learn and improve? | |
- can we deliver sooner & more often? | |
- Lean Coffee -> look it up | |
Web for Augmented Reality | |
- AR: mixing media w/ world view | |
- ex. google glass | |
- ex. *not* pokemon go | |
- Microsoft Hololens: 3d mapping interactive elements onto your environment | |
- Google Tango: similar to Hololens, but on phone | |
- WebVR: 3d VR webpages | |
- Argon4/Argon.js: Add AR to web apps | |
- Glitch.com: client + server side sandbox | |
- Twine: telling interactive, non-linear stories on the web | |
- To experiment with AR: arframe.io, argonjs.io | |
One Year w/ Angular v2 | |
- 3 elements in angular2 | |
- components | |
- injectables (replace services) | |
- ngModule | |
- Things to consider when creating a new project | |
- javascript flavor (es6, typescript) | |
- build system (webpack, system.js, jspm, browserify) | |
- if angular, try the CLI first | |
- rxjs: predictable async events | |
- apparently this will break your brain at first. be patient | |
- provides observables | |
- standard naming practice of these observables: varname$ | |
- The majority of new plugins are based on typescript. strongly consider using it, or you may be rolling your own solutions | |
- Angular Universal: server side rendering (or pre-rendering) of angular apps | |
DevSecOps | |
- Infrastructure as code should also include your security as code | |
- immutable boxes are key in this strategy | |
- Automatic dev and prod security scans | |
- scan failures are are automatically sent as slack notifications | |
- Your build it, you own it, you secure it! | |
- Automate your security flows (ex. user creation) | |
- Requirements must be groomed w/ security in mind | |
- security 1st, if possible | |
Back to Front - Code Evolution (read: mostly jokes) | |
- LISP jokes: https://xkcd.com/297/ | |
- 1st website ever: http://info.cern.ch/hypertext/WWW/TheProject.html | |
- Not sure what javascript flavor to use? try Vanilla JS! http://vanilla-js.com/ | |
Pragmatic Programming | |
- How do I pragmatically program? | |
- experiment with new things | |
- be inquisitive | |
- think critically | |
- be realistic | |
- be a jack of all trades | |
- Understand the Dreyfus Model of skill acquisition | |
- Neuroplasticity won't happen if you don't think you can learn, and will if you do | |
- Make a learning plan | |
- regular investment | |
- safe place, time | |
- make learning habitual | |
- goal setting should be S.M.A.R.T. | |
- diversify your studies | |
- plan for now, 1 year, and 5 years out | |
- rebalance | |
- if a study is breaking your groove and/or you don't like it, move on | |
- Fix broken windows | |
- don't let bugs become the norm | |
- Minify complexity | |
- use tools on tools as little as possible | |
- use dynamic languages when you can | |
- ex. of too complex: java's hello world example | |
- Employ the single responsibility principle | |
- Increase cohesion while decreasing coupling | |
- code should be removable/replaceable | |
- Your code should be deliberate | |
- a stack of 5 void function calls in a row sucks | |
- make assertions | |
- Only rely on reliable elements | |
- Automate (CI, CD) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment