son

Advanced introduction to environmental impact assessment / Angus Morrison-Saunders (School of Science, Edith Cowan University, Australia, Research Unit for Environmental Sciences and Management, North West University, South Africa and Cambridge Institute

Morrison-Saunders, Angus, author




son

Complex ecology : foundational perspectives on dynamic approaches to ecology and conservation / edited by Charles G. Curtin (University of Montana), Timothy F.H. Allen (University of Wisconsin, Madison)




son

Satellite remote sensing for conservation action : case studies from aquatic and terrestrial ecosystems / edited by Allison K. Leidner (ASRC Federal/National Aeronautics and Space Administration), Graeme M. Buchanan (RSPB, Edinburgh, UK)




son

The integration imperative : cumulative environmental, community, and health effects of multiple natural resource developments / Michael P. Gillingham, Greg R. Halseth, Chris J. Johnson, Margot W. Parkes, editors




son

Environmental impact assessment in the Arctic : a guide to best practice / Timo Koivurova, Pamela Lesser with Sonja Bickford, Paula Kankaanpää, Marina Nenasheva

Koivurova, Timo, author




son

Designing climate solutions : a policy guide for low-carbon energy / by Hal Harvey, with Robbie Orvis, Jeffrey Rissman, Michael O'Boyle, Chris Busch, and Sonia Aggarwal

Harvey, Hal, author




son

Introduction to environmental impact assessment / John Glasson and Riki Therivel

Glasson, John, 1946- author




son

Discerning experts : the practices of scientific assessment for environmental policy / Michael Oppenheimer, Naomi Oreskes, Dale Jamieson, Keynyn Brysse, Jessica O'Reilly, Matthew Shindell, and Milena Wazeck

Oppenheimer, Michael, author




son

Grasslands and climate change / edited by David J. Gibson, Jonathan A. Newman




son

Biosecurity : the socio-politics of invasive species and infectious diseases / edited by Andrew Dobson, Kezia Barker and Sarah L. Taylor




son

Why we love and exploit animals : bridging insights from academia and advocacy / edited by Kristof Dhont, Gordon Hodson




son

Sony India starts advanced booking for home audio-video products

Under its 'Stay Home, Stay Safe' programme, Sony is offering discounts and special price offer on its products




son

Trinamool leader’s son molests Class X student



  • Cities
  • DO NOT USE West Bengal

son

SFI student leader Sudipto Gupta’s father wants Mamata to return dead son




son

Calcutta HC directs RTI queries to mention post box,no personal details



  • DO NOT USE West Bengal
  • India

son

Four persons arrested for Kalyani University rampage



  • DO NOT USE West Bengal
  • India

son

Chronicling America: Historic American Newspapers: 100 YEARS AGO: "Wilson Blocks Daylight Saving Appeal," The Evening World, July 12, 1919

Daylight saving time went into effect in the United States on March 31, 1918 during World War I as part of the war effort and many thought it would end when the war ended. Farmers across the country petitioned to end national daylight saving time in 1919 but President Wilson vetoed the repeal stating it “would be of very grave inconvenience to the country.” He would go on to reject the bill a second time on August 15, 1919. Read more about it and follow us on Twitter @librarycongress #ChronAm!

 




son

How PM, Sonia beat Dilli ki sardi!

Arun Jaitley's laud-worthy effort... Revealed! The new 'best friends' in politics... Akhilesh Yadav's big dilemma... All this and more in this week's Dilli Gupshup.




son

Proceedings of the Fourth International Symposium on Electrochemistry in Mineral and Metal Processing / editors, R. Woods, F.M. Doyle, P. Richardson

International Symposium on Electrochemistry in Mineral and Metal Processing (4th : 1996 : Los Angeles, Calif.)




son

Totley, a study of the silver mines at One Mile, Ravenswood district / by K.H. Kennedy, Peter Bell, Carolyn Edmondson ; with preface by B.J. Dalton

Kennedy, K. H. (Kett Howard), 1948-




son

Direct transfer of soil in the wet season as a method to establish resprouter species in rehabilitated bauxite mines / M.A. Norman, J.M. Koch

Norman, M. A




son

Uranium mining : market prospects and environmental consequences : a background paper for delegates to the 1988 ALP National Conference / by Chas Collison and Peter Milton

Collison, Chas




son

VSP fire personnel play key role in containing gas leak

They also helped evacuate people from the affected area




son

013 JSJ Knockout.js with Steven Sanderson

The panelists discuss Knockout.js with Steven Sanderson




son

024 JSJ Strata.js with Michael Jackson




son

081 JSJ Promises for Testing Async JavaScript with Pete Hodgson

Pete Hodgson crosses over from the iPhreaks podcasts to talk with the Jabber gang about testing asynchronous Javascript with promises.




son

091 JSJ JSON APIs

The panelists discuss JSON APIs.




son

120 JSJ Google Polymer with Rob Dodson and Eric Bidelman

The panelists talk to Rob Dodson and Eric Bidelman about the Google Polymer project and Google I/O.




son

123 JSJ Traceur with Erik Arvidsson

The panelists chat with Erik Arvidsson about Traceur.




son

134 JSJ Quilljs with Jason Chen

The panelists discuss Quilljs with its' creator, Jason Chen.




son

141 JSJ Firefox OS with Jason Weathersby

The panelists talk about Firefox OS with Jason Weathersby.




son

156 JSJ Soft Skills and Marketing Yourself as a Software Developer with John Sonmez

Check out ReactRally: A community React conference in Salt Lake City, UT from August 24th-25th!

03:36 - John Sonmez Introduction

04:29 - Mastermind Groups

05:53 - “Soft Skills”

  • Why Care About Soft Skills?
    • People Skills
    • Finances
    • Fitness

11:53 - Learned vs Innate

  • Lifting Limited Beliefs
  • Practice

14:14 - Promotion (Managerial) Paths

17:52 - “Marketing”

29:53 - Get Up and CODE!

33:47 - Burnout

Get John’s How to Market Yourself as a Software Developer Course for $100 off using the code JSJABBER

Comment on this episode for your chance to win one of two autographed copies of Soft Skills: The Software Developer's Life Manual by John Sonmez

Picks

The Recurse Center (Jamison)
Code Words Blog (Jamison)
DayZ Player Sings (And Plays Guitar) For His Life (Jamison)
Demon (Jamison)
Mastodon: Leviathan (Jamison)
Jan Van Haasteren Puzzles (Joe)
Hobbit Tales from the Green Dragon Inn (Joe)
AngularJS-Resources (Aimee)
Superfeet Insoles (Aimee)
Good Mythical Morning (AJ)
The Magic of Thinking Big by David J. Schwartz (Chuck)
Streak (John)
The E-Myth Revisited: Why Most Small Businesses Don't Work and What to Do About It by Michael E. Gerber (John)
Influence: The Psychology of Persuasion, Revised Edition by Robert B. Cialdini (John)
Do the Work by Steven Pressfield (John)
The War of Art: Break Through the Blocks and Win Your Inner Creative Battles by Steven Pressfield (John)

 




son

162 JSJ ESLint with Jamund Ferguson

02:15 - Jamund Ferguson Introduction

02:47 - Lint (Background)

04:48 - Keeping ESLint Up-to-date

08:09 - Abstract Syntax Tree (ASTs)

13:28 - Using Lint Tools

20:42 - Are there a downsides to linting?

  • The Social Problem

23:40 - Establishing Rules

25:12 - Cool ESLint Features

30:45 - How ESLint Works Internally

40:07 - Getting Started with Linting

43:03 - Autofixer

44:41 - Plugins

46:47 - Linter Feedback From the Panel

Picks

Mozilla (AJ)
We Will All Be Game Programmers (Aimee)
Search Inside Yourself: The Unexpected Path to Achieving Success, Happiness (and World Peace) by Chade-Meng Tan (Aimee)
Good Mythical Morning (Dave)
Salt Lake City (Dave)
BB King Calls This One Of His Best Performances (Jamison)
json-server (Jamison)
Austenland (Joe)
Supergirl (Joe)
A Short History of Nearly Everything by Bill Bryson (Jamund)
The Book of Mormon (Jamund)

 

 

 

 

 




son

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

03:32 - Jeff Morrison Introduction

03:46 - Avik Chaudhuri Introduction

04:27 - Flow

05:36 - Static Type Checking

09:52 - Flow and Unit Testing

12:39 - Gradual Typing

15:07 - Type Inference

17:50 - Keeping Up with New Features in JavaScript

20:49 - Generators

24:46 - Working on Flow

28:27 - Flow vs TypeScript

35:41 - Putting the “Java” Back in JavaScript

  • Server/Client Overview
  • Prototyping

45:26 - Flow and the JavaScript Community

46:43 - React Support

48:39 - Documentation

Picks

Nolan Lawson: We have a problem with promises (Aimee)
Jim 'N Nick's BBQ Restaurant (Aimee)
Frank McSherry: Scalability! But at what COST? (Jamison)
Frank McSherry: Bigger data; same laptop (Jamison)
Greg Wilson: What We Actually Know About Software Development, and Why We Believe It's True (Jamison)
Marron: Time-Travel Debugging for JavaScript/HTML Applications (Jeff)
Real World OCaml (Jeff)

Muse (Jeff)
Shtetl-Optimized (Avik)
Chef's Table (Avik)




son

172 JSJ NodeSchool with Jason Rhodes

Check out Angular Remote Conf!

 

02:22 - Jason Rhodes Introduction

03:46 - NodeSchool

06:05 - “Workshopper(s)”

07:13 - How Meetups Run (Format), Target Audience

11:09 - Pair Programming and Peer Learning

14:34 - Starting a NodeSchool Chapter

15:53 - Implementing Diversity

18:07 - Mentoring and Mentorship

20:49 - Time Commitment and Effort

24:02 - Appealing to All Experience Levels of Attendees

26:48 - The NodeSchool Community

30:45 - Being a Member of an Open Source Community

Picks

Better Off Ted (Joe)
Cat Exercise Wheel (Aimee)
That Conference (Joe)
primitive.io (Joe)
React Rally (Aimee)
Falcor YouTube Playlist (Aimee)
javascriptjabber.com/15minutes (Chuck)
Entreprogrammers Retreat 2015  (Chuck)
Love Letter (Jason)
charmCityJS (Jason)
Mad Max: Fury Road (Jason)




son

185 JSJ PouchDB with Nolan Lawson

Check out JS Remote Conf!

 

02:29 - Nolan Lawson Introduction

04:19 - PouchDB (vs CouchDB)

05:25 - CouchDB Emulation

06:45 - How CouchDB Works

08:26 - Syncing and Replication

10:43 - PouchDB vs Other Paradigms for Building Client-side Apps and Managing Data

13:58 - AP Databases / CP Databases / CA Databases

17:25 - Ignoring Merge Conflicts

20:08 - Mutability vs Immutability

  • “Accountants don’t use erasers”

21:29 - Offline First

24:59 - Client-to-client Syncing

25:54 - IndexDB and Local Storage

28:50 - Authentication and Authorization

30:30 - Mobile Support

31:42 - Resource Usage When Syncing

33:06 - Use Cases

34:53 - Partitioning Data

36:22 - Getting Started

37:09 - Contribution

38:53 - Upcoming Features

Picks

source-map-explorer (Jamison)
Facebook: Managing Bias Videos (Jamison)
Computers Are Fast (Jamison)
86 Mac Plus Vs. 07 AMD DualCore. You Won't Believe Who Wins (Jamison)
Authy App (AJ)
Chip Network Channel on YouTube (AJ)
Oregon (AJ)
Browser Authenticator (AJ)
Node Authenticator (AJ)
AngularConnect (Aimee)
Kevin Old (@kevinold) (Aimee)
Jordan Kasper (@jakerella) (Aimee)
Highrise (Chuck)
Streak (Chuck)
The Accursed Kings Series by Maurice Druon (Nolan)
The Smash Brothers (Nolan)
Super Smash Bros. Melee (Nolan)




son

204 JSJ Free Code Camp with Quincy Larson

03:10 - Quincy Larson Introduction

03:20 - Free Code Camp

04:47 - Quincy’s Background

06:43 - Curriculum and Non-Profit Projects

09:47 - Keeping the Curriculum Updated

10:30 - Enrollment; Starting & Finishing

12:20 - Resources for Learning

15:39 - Funding

16:06 - Working Through a Self-Paced System vs Structure

17:17 - Nonprofits

19:51 - Learning to Work on Non-Greenfield Code

21:47 - Getting Hired After the Program

23:21 - Marketing and Media

26:07 - Sustaining Living While Running This Program

27:31 - The Future of Free Code Camp

28:34 - Long-term Sustainability

29:44 - Hypothetical Monetization and Contribution

33:51 - Coding as a form of art or function?

36:55 - Partnerships

37:53 - Making Free Code Camp More Effective

39:18 - Criticism?

40:29 - Curriculum Development and Evolution

43:02 - Is Free Code Camp for everybody?

  • Read, Search, Ask

46:09 - The Community

51:07 - Getting Involved in Free Code Camp

Picks

Our Greatest Fear — Marianne Williamson (AJ)
The Rabbit Joint - The Legend of Zelda (AJ)
Nintendo (Twilight Princess HD Soundtrack) (AJ)
Steve Wozniak: The early days @ TEDxBerkeley (AJ)
Favor of the Pharaoh (Joe)
The Goldbergs (Joe)
The Best Podcast Rap (Chuck)
Word Swag (Chuck)
Cecily Carver: Things I Wish Someone Had Told Me When I Was Learning How to Code (Quincy)
Code for the Kingdom (Aimee)
diff-so-fancy (Aimee)




son

220 JSJ Teaching JavaScript with Kyle Simpson

02:25 - Kyle Simpson Introduction

04:43 - Development => Teaching

16:20 - Inheritance and Delegation

29:40 - Evolving a Language

36:23 - Cohersion

50:37 - Performance

  • The Width Keyword

54:33 - Developer Education Programs and The Skill of Teaching

 

Picks




son

221 JSJ Visual Studio Code with Wade Anderson Live From Microsoft Build 2016

This episode was recorded live from The Microsoft Build Conference 2016. In this episode we chatted with Wade Anderson of Microsoft about Visual Studio Code. You can follow him on Twitter, or check out what he’s done over on GitHub.

 

Picks

 

A special thanks again goes out to Richard Campbell and Carl Franklin from .NETRocks for putting this podcast series together! You rock!




son

233 JSJ Google Chrome Extensions with John Sonmez

02:50 The definition of a plug-in

03:31 The definition of an extension

05:09 The way to determine the plug-ins and extensions you are running

08:22 How to create an extension file

11:02 The appeal of creating extensions

13:26 How John got into creating extensions

15:48 Ways to organize extensions

19:38 Aspects of chrome that will affect extensions

23:23 Packaging for the Chrome store

26:22 Using dev tools

29:42 Conflicting plug-ins/extensions and how to deal with them

31:30 Open source extensions

32:32 A quick way to create an extension

QUOTES:

“I teach software developers how to be cool.” –John Sonmez

“There wasn’t an ability to extend the dev tools, but now there is.” –John Sonmez

“One quick way to create an extension is just to take one of these sample apps…and then just start modifying it…” –John Sonmez

PICKS:

“Django Unchained” Website

“Using Angular 2 Patterns in Angular 1.x” Apps Egghead Course

Girls’ Life vs. Boys’ Life on Refinery29

Webinar Jam Software

 

“Five Mistakes That are Keeping You From Getting Hired” Webinar

Screencastify Chrome Extension

How to Fail at Almost Everything and Still Win Big Book on Amazon

The Complete Software Developers Career Guide Book in Progress

Simple Programmer Website

Simple Programmer on Youtube




son

JSJ 262 Mozilla Firefox Developer Tools with Jason Laster

Join AJ, Aimee, and Joe as they discuss Mozilla Firefox Developer Tools with Jason Laster. Jason just started working at Mozilla since March. But even before that, he has been working on Chrome's dev tool extension called Marionette. That's when he discovered that the browser is an open source that anyone can play with. Now, he is working on a new debugger in Firefox. Tune in!




son

JSJ 265 Wade Anderson and Ramya Rao on Visual Studio Code

JSJ 265 Wade Anderson and Ramya Rao on Visual Studio Code

This episode is live at the Microsoft Build 2017 with Charles Max Wood and AJ O’Neal. We have Wade Anderson and Ramya Rao from the Visual Studio Code Team at Microsoft. Tune in and learn more about what’s new with Visual Studio Code!

[00:01:20] – Introduction to Ramya Rao and Wade Anderson

Ramya Rao and Wade Anderson are in the Visual Studio Code Team at Microsoft.

Questions for Wade and Ramya

[00:02:00] – Elevator Pitch for Visual Studio Code

Our vision on Visual Studio Code is to take what was best out of the IDE world (Visual Studio, Eclipse, IntelliJ, etc.) and bring what was best from the lightweight editor world (Sublime Text, Notepad++, Atom) and merge those two together. We wanted the lightweight features from text editors and the debugging capabilities of Visual Studio and Eclipse. We did general availability last year. We’ve been stable for a year. Additionally, this is Visual Studio Code for Mac, Windows, or Linux. It’s also built in Electron.

[00:03:45] – What are your roles on the team? Do you have particular parts that each of you work on?

Wade’s title is a Program Manager. He does more non-developer things but Ramya is an engineer on the team so she gets a lot more coding that Wade does. Everybody has a key area to own but nothing stops them to go into another area. We try to share knowledge between people but we always have that one key owner that you always go to.

Ramya is a recent addition to the team. She started out maintaining the Go extension, maintaining and adding features. She’s slowly branching out to the Emmet features of the product.

[00:05:30] What is Emmet?

Emmet, or Zen Coding, is a must-have tool for you. You can write, say abbreviations and that expands to really huge HTML to update tags, rename tags, etc. That is one of the features of Emmet and Sergey actually wrote the library. We have an in built integration in the product. I [Ramya] am currently working on that.

[00:06:28] Does Visual Studio Code make it easy to go to the parts that I need to customize on an HTML?

In that case, we have a multi-cursor software in Visual Studio Code, as well. You could place your cursor in different positions, and then, simultaneously edit things.

[00:07:42] Is Emmet an extension or does it come with Visual Studio Code?

Right now, it’s in Built. If you want to know more about Emmet features, you can to emmet.io. That has all the documentation that you need to learn about Emmet features. In Visual Studio Code right now, we’re looking at making into an extension. We pull it out of the main code and maybe more people can contribute and make it even more better.

[00:08:21] – What’s new in Visual Studio Code?

One of our main pillars for this year is to improve performance of the product. We’ve grown a larger team so we’re adding a lot more features every month. Last few months has been, “How can we get some stability on the issues coming in while making sure we’re reducing our tech load?” We really keep to those core principles that we started with at the beginning, which was, we want a fast, lightweight editor.

We built a few extensions that we call key map extensions. They are just a mapping of key bindings that you learned in Sublime Text. You don’t have to re-learn any key bindings in Visual Studio Code.

We also build this Welcome page where you can flip through and see features really briefly. In that Welcome page, one of the key things is an interactive playground where you can play with existing code in different sections. Additionally, as we’ve mentioned, we also put multi-cursor features.

Another thing is workbench naming. You can change the theme of Visual Studio Code but it will be restricted to the editor and not the rest of the workbench.

[00:13:40] – Do you know how Xterm.js works as it was one of the features that you’ve added in Visual Studio Code?

Daniel’s another engineer that’s here with us today. He was the largest contributor to the Xterm.js project. He built the integrated terminal for Visual Studio code so I can’t speak to the internals of how that works.

[00:14:12] – Are we going to start seeing Visual Studio Code integrated into web experiences with other Microsoft products?

That’s actually where we started. We were Monaco editor where you get this cloud-based editing experience. We’re getting people to use it but we’re only getting people who were already using Microsoft products.  When electron came out, we saw an opportunity of, “Hey, can we port this  Monaco editor to Electron and we could then, run it on Mac and Linux.”

[00:19:45] – What are the performance things that you’ve done?

One thing that we did recently was adding an ability to calculate the start time for Visual Studio Code? That’s one of our full steps to get more information from the user-side. How can you get a profile of what things are running? Which part of the process took much time?

We also need to identify what are the things people are doing that’s causing the editor slow down. An example is when you open a large file and things get laggy.

Another exercise we did was we looked at all of our extension API’s to see which one of those could be a malicious extension.

The difference between VS Code and Atom is that, we ask questions like, “Are we using good data structures? Are we managing our memory properly? Are we removing stuff we don’t need anymore?” That just comes down to all those little things you learn from basic textbooks that have been around for decades about how to write good code. That’s what we have been doing and that’s what we’ll continue to try to do, to try and improve the performance.

[00:25:55] – Do you have problem on the desktop? Are all the modules just load at once?

We definitely don’t load everything at once. Different parts of the editor is loaded differently. When you do the Require, we don’t do it at first load. We do it when we notice that the user wants to use Emmet. We don’t try to load all the library at the beginning and delay the whole process.

We try to lazy load as much as possible, even the extensions. We have a separate process called extension host that takes care of loading all the extensions. Whether the extensions are completed loading or not, that does not stop you from typing in a file. Simple actions shouldn’t be bugged down by fancy actions.

[00:28:25] – What’s coming next for Visual Studio Code?

Every month, when we plan our iteration, we create iteration draft plan. We put it out there for people to see. Performance and helping people get started are probably the top two for us. You can look at github.com/Microsoft/vscode, look for the label ‘iteration plan draft.’ So that’s the current work that we’re doing that month.

Another feature is the multi-root workspace where you can open multiple folders. When you look at the issues and sort by most comments, multi-root is the number one. The second one that is little paper cuts around formatting and auto-intending – just things that make your code prettier.

Picks

AJ O’neal

  • Breath on the Wild
  • Microsoft’s Intelligent Edge

Charles Max Wood

  • Boom Beach
  • Bluetick.io
  • Emacs key binding extension for Visual Studio Code

Wade Anderson

  • Kindle Paperwhite
  •  Twitter @waderyan_

Ramya Rao

  • Open source
  • Twitter @ramyanexus




son

JSJ 270 The Complete Software Developers Career Guide with John Sonmez


JSJ 270 The Complete Software Developers Career Guide with John Sonmez

This episode features a panel of Joe Eames, AJ O’Neal, as well as host Charles Maxwell. Special guest John Sonmez runs the website SimpleProgrammer.com that is focused on personal development for software developers. He works on career development and improving the non-technical life aspects of software developers. Today’s episode focuses on John’s new book The Complete Software Developers Career Guide.


Did the book start out being 700 pages?

No. My goal was 200,000 words. During the editing process a lot of questions came up, so pages were added. There were side sections called “Hey John” to answer questions that added 150 pages.

Is this book aimed at beginners?

It should be valuable for three types of software developers: beginner, intermediate, and senior developers looking to advance their career. The book is broken up into five sections, which build upon each other. These sections are: - How to get started as a software developer - How to get a job and negotiate salary - The technical skills needed to know to be a software developer - How to work as a software developer - How to advance in career

Is it more a reference book, not intended to read front to back?

The book could be read either way. It is written in small chapters. Most people will read it start to finish, but it is written so that you can pick what you’re interested in and each chapter still makes sense by itself.

Where did you come up with the idea for the book?

It was a combination of things. At the time I wanted new blog posts, a new product, and a new book. So I thought, “What if I wrote a book that could release chapters as blog posts and could be a product later on?” I also wanted to capture everything I learned about software development and put it on paper so that didn’t lose it.

What did people feel like they were missing (from Soft Skills) that you made sure went into this book?

All the questions that people would ask were about career advice. People would ask things regarding: - How do I learn programming? - What programming language should I learn? - Problems with co-workers and boss - Dress code

What do you think is the most practical advice from the book for someone just getting started?

John thinks that the most important thing to tell people is to come up with a plan on how you’re going to become educated in software development. And then to decide what you’re going to pursue. People need to define what they want to be. After that is done, go backwards and come up with a plan in order to get there. If you set a plan, you’ll learn faster and become a valuable asset to a team. Charles agrees that this is how to stay current in the job force.

What skills do you actually need to have as a developer?

Section 3 of the book answers this question. There was some frustration when beginning as a software developer, so put this list together in the book. - Programming language that you know - Source control understanding - Basic testing - Continuous integration and build systems - What kinds of development (web, mobile, back end) - Databases - Sequel

Were any of those surprises to you?

Maybe DevOps because today’s software developers need to, but I didn’t need to starting out. We weren’t involved in production. Today’s software developers need to understand it because they will be involved in those steps.

What do you think is the importance of learning build tools and frameworks, etc. verses learning the basics?

Build tools and frameworks need to be understood in order to understand how your piece fits into the bigger picture. It is important to understand as much as you can of what’s out there. The basics aren’t going to change so you should have an in depth knowledge of them. Problems will always be solved the same way. John wants people to have as few “unknown unknowns” as possible. That way they won’t be lost and can focus on more timeless things.

What do you think about the virtues of self-taught verses boot camp verses University?

This is the first question many developers have so it is addressed it in the book. If you can find a good coding boot camp, John personally thinks that’s the best way. He would spend money on boot camp because it is a full immersion. But while there, you need to work as hard as possible to soak up knowledge. After a boot camp, then you can go back and fill in your computer science knowledge. This could be through part time college classes or even by self-teaching.

Is the classic computer science stuff important?

John was mostly self-taught; he only went to college for a year. He realized that he needed to go back and learn computer science stuff. Doesn’t think that there is a need to have background in computer science, but that it can be a time saver.

A lot of people get into web development and learn React or Angular but don’t learn fundamentals of JavaScript. Is that a big mistake?

John believes that it is a mistake to not fully understand what you’re doing. Knowing the function first, knowing React, is a good approach. Then you can go back and learn JavaScript and understand more. He states that if you don’t learn the basics, you will be stunted and possibly solve things wrong. Joe agrees with JavaScript, but not so much with things algorithms. He states that it never helped him once he went back and learned it. John suggests the book Algorithms to Live By – teaches how to apply algorithms to real life.

Is there one question you get asked more than anything else you have the answer to in the book?

The most interesting question is regarding contract verses salary employment and how to compare them. It should all be evaluated based on monetary value. Salary jobs look good because of benefits. But when looking at pay divided by the hours of work, usually a salary job is lower paid. This is because people usually work longer hours at salary jobs without being paid for it.

What’s the best place for people to pick up the book?

simpleprogrammer.com/careerguide and it will be sold on Amazon. The book will be 99 cents on kindle – want it to be the best selling software development book ever.


Picks

Joe

Wonder Woman

AJ

The Alchemist

Charles

Artificial Intelligence with Python

John

Algorithms to Live by: The Computer Science of Human Decisions Apple Airpods


Links

Simple Programmer Youtube




son

MJS #027 Chris Anderson

MJS 027 Chris Anderson

This episode is a My JavaScript Story with guest Chris Anderson. Chris works at Microsoft, specifically on Azure Functions and WebJobs SDK. Hear how he got his start, how he has contributed to the community, as well as a bit about what it’s like being a Program Manager for Microsoft. 


[00:01:50] ]How did you get into programming?

In college Chris was an aerospace engineer. His first taste of working with code was at an internship at Lockheed Martin. Most of his daily work was with spread sheets so he learned Visual Basic to help handle that. He found himself interested in writing code more so he took an intro in C summer course and then things snowballed. When he finished that semester, he talked to advisor about switching to Computer Science. Immediately landed into JavaScript. Chris talks about having a ‘clicking moment’ while in a topics class. A classmate was talking about NodeJS and so he tried it out and hasn’t stopped using it since.

[00:03:36] What about programing appealed to you?

Chris says that programming made him have a sense of having superpowers. In aerospace he learned how planes worked and that was fun, but programming had an immediately feedback on what he was working on. He adds that it made sense in the way that programming is a universal toolset for no matter what field you’re in. Charles adds that he dug into coding after working in tech support and needing it.

[00:05:22] Have you worked with JavaScript before learning about Node?

Chris’ first real coding experience was with his internship. He taught himself JavaScript on the job and after a few months found himself really liking it. He felt like JavaScript felt more natural and expressive. Javascript empowered him to work on the client side and the server side and he felt empowered to do full stack.

[00:06:55] Was this before Microsoft?

Microsoft’s hiring process for college graduates you apply the year you graduate and go through a handful of interviews. He got hired into a team working on databases, working in SQL server. He wanted to work in developer tools and learned how to use power shell and SQL works and how powerful it was. He started moving back and pushing NodeJS onto SQL. There was a driver for SQL purely in JavaScript called TDS and he would make pull requests and contributed to that. He talks about searching internally looking for other work and finding a mobile services team that needed a NodeJS person so he started there. Later he started WebJobs and then later Functions, as an effort to make NodeJS technology work with a .Net technology called Webjobs SDK. Functions exists because he wanted to add a NodeJS to a .Net product.

[00:11:07] ] Did you find pushing NodeJS into a well developed language ecosystem risky?

Chris talks about helping push adoption of .Net and creating prototype ideas, and it sparking from that. His goal was to make customers more productive.

[00:12:02] Having fun at work

Chris talks about the team culture being fun at times. Sometimes as a developer you get buffered by Project Managers, but in the case developers spend a lot of time talking to customers. They are excited so they have loads of interactions, helping develop diverse ideas. Charles adds that the preconception to how the environment feels in Microsoft tends to be negative but from talking to people who work there, things seem to be more open than expected. Chris points to open source concepts that really makes working with Microsoft great.

[14:40] What does a Program Manager do on a team?

Chris talks about how his job is to explore the issues and talk to customers and then prioritize how to make things better. He talks about doing whatever he can to make the product successful with the customers, including building a prototype of an idea, taking a sort of position similar to an entrepreneur. Charles adds that it’s refreshing to find that someone in the Program Manager also being technical sufficient and hands on. Chris talks about how teams are built naturally and pulled together with a group of people who love what they are doing.

[00:16:52] Does the Azure Functions team use Azure Functions to make Azure Functions work?

Chris talks about not using Azure functions under the covers, for the most part it’s built on top of the app service technology stack like web apps and mobile apps. Things that power that is what powers the Azure functions, like Angular. A lot of the engineering pieces are on top of that. They do use Azure for various Microsoft internal things. All of the tests they build are functions to test functions.

[00:18:24] How did you and your team come to use Angular?

Chris was working on the prototype for Azure Functions. Amed had experience with working on front end applications and he wanted to try out Angular 2 even though it was still in beta. He found that had the right amount of stuff out of the box. Additionally it had typescript which meshed well. They tend to pick things that people on the team know well and not as much as trying to stay tied into Microsoft supported systems. Chris talks about doing one or two major refactoring.

How much Angular have you worked on yourself?

Amed works the most on Angular, Chris’ job as Program Manager puts in him in a place where his commits don’t go into production, but he will often write prototypes. He played around a lot with the Monaco editor and adding features for that. As far as outside of that, he has written a few tutorials for using Functions plus Angular as well as written his wedding website with Angular.

[00:22:33] What other extracurricular projects have you worked on?

Chris talks about doing a lot of side projects for a while. One working with ExpressSocket.io. He also built a middleware project where you can write middleware into Functions. Plenty of little projects he puts on GitHub and never finishes. Chris talks about wishing he could switch hats between being the Program Manager and a developer.

[00:23:42] Is there anything in particular you feel like you’ve contributed to Angular?

Chris talks about improving by putting in loads of pull requests for tons of JavaScript libraries and a few NodeJS libraries. He would like to be more involved in the start of those processes. Chris says he hopes to maybe be involved in the next Node version update. He really likes the Node community.


Picks

Chris

Mountain Dew Pitch Black
The Expanse Series on SciFi
Application Insights

Charles

Wheel of Time
Coolage
Dog Company
Data Dog


Links

Twitter
GitHub




son

JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

This episode of JavaScript Jabber features panelists Aimee Knight, Cory House, and Charles Max Wood. They talk with Dylan Schiemann and Kitson Kelly about Dojo 2.

[00:02:03] Introduction to Dylan Schiemann

Dylan is the CEO at Sitepen and co-founder of the Dojo Toolkit.

[00:02:22] Introduction to Kitson 

Kitson is the CTO at Sitepen and project lead for Dojo 2.

[00:02:43] Elevator Pitch for Dojo

Dojo 1 has been around forever. Started back in 2004 as a way to solve the challenge of "I want to build something cool in a browser." Promises and web components were inspired by or created by Dojo. It's been a huge influence on the web development community.

Dojo 2 is a ground up re-write with ES 2015, TypeScript and modern API's. It's a modernized framework for Enterprise applications.

[00:04:29] How is Dojo different from other frameworks?

There's a spectrum: small libraries like React with an ecosystem and community of things you add to it to Angular which is closer to the MV* framework with bi-directional data binding. Vue lands somewhere in the middle. Dojo 2 is also somewhere in the middle as well. It's written in TypeScript and has embraced the TypeScript experience.

[00:06:00] Did the Angular 2 move influence the Dojo 2 development and vice-versa?

Dojo 2 had moved to TypeScript and 2 days later Angular announced that they were going to TypeScript. Angular also moved very quickly through their BETA phase, which caused some challenges for the Angular community.

With Dojo 2, they didn't start the public discussion and BETA until they knew much better what was and wasn't going to change. They've also been talking about Dojo 2 for 6 or 7 years.

The update was held up by adoption of ES6 and other technologies.

Dojo 1 was also responsible for a lot of the low-level underpinning that Angular didn't have to innovate on. Dojo 2 was built around a mature understanding of how web applications are built now.

People doing Enterprise need a little more help and assistance from their framework. Dojo provides a much more feature rich set of capabilities.

Angular could have pushed much more of TypeScript's power through to the developer experience. Dojo much more fully adopts it.

It's also easier if all of your packages have the same version number.

Call out to Angular 4 vs Angular 2.

[00:12:44] AMD Modules

Why use AMD instead of ES6 modules?

You can use both. Dojo 2 was involved in the creation of UMD. James Burke created UMD while working on Dojo.

ES6 modules and module loading systems weren't entirely baked when Dojo 2 started to reach maturity, so they went with UMD. It's only been a few months since Safari implemented the ES6 module system. Firefox and friends are still playing catchup.

The Dojo CLI build tool uses webpack, so it's mostly invisible at this point.

So, at this point, should I be using UMD modules? or ES6? Is there an advantage to using AMD?

With TypeScript you'd use ES6 modules, but UMD modules can be loaded on the fly.

[00:16:00] Are you using Grunt?

Internally, for tasks we use Grunt. But for users, we have a CLI tool that wraps around Webpack.

For package builds and CI, Grunt is used.

[00:18:30] What is the focus on Enterprise all about?

There are a lot of different challenges and complexities to building Enterprise apps. Dojo was the first framework with internationalization, large data grids, SVG charts, etc. Dojo has spend a long time getting this right. Many other systems don't handle all the edge cases.

Internationalization in Angular 2 or 4 seems unfinished.

Most Dojo users are building for enterprises like banks and using the features that handle large amounts of data and handle those use cases better.

[00:21:05] If most application frameworks have the features you listed, is there a set of problems it excels at?

The Dojo team had a hard look at whether there was a need for their framework since many frameworks allow you to build great applications. Do we want to invest into something like this?

React has internationalization libraries. But you'll spend a lot of time deciding which library to use and how well it'll integrate with everything else. A tradeoff in decision fatigue.

In the Enterprise, development isn't sexy. It's necessary and wants to use boring but reliable technology. They like to throw bodies at a problem and that requires reliable frameworks with easily understood decision points.

Producing code right is a strong case for TypeScript and they pull that through to the end user.

Many frameworks start solving a small set of problems, become popular, and then bolt on what they need to solve everything else...

Dojo tried to make sure it had the entire package in a clear, easy to use way.

You can build great apps with most of the big frameworks out there. Dojo has been doing this for long enough that they know where to optimize for maintainability and performance.

[00:29:00] Where is Dojo's sweet spot? 

The Sitepen Blog series on picking a framework

The biggest reason for using Dojo over the years is the data grid component.

They also claim to have the best TypeScript web development experience.

You may also want a component based system with the composition hassles of React.

The composability of components where one team may write components that another uses is a big thing in Dojo where one person doesn't know the entire app you're working on.

Theming systems is another selling point for Dojo.

[00:34:10] Ending the framework wars

Try Dojo out and try out the grid component and then export it to your Angular or React app.

There are a lot of frameworks out there that do a great job for the people who use them. The focus is on how to build applications better, rather than beating out the competition.

Sitepen has build apps with Dojo 2, Angular, React, Dojo + Redux, etc.

[00:39:01] The Virtual DOM used by Dojo

2 years ago or so they were looking for a Virtual DOM library that was small and written in TypeScript. They settled on Maquette.

The more you deal with the DOM directly, the more complex your components and libraries become.

Makes things simpler for cases like server side rendering getting fleshed out in BETA 3.

It also allows you to move toward something like React Native and WebVR components that aren't coupled to the DOM.

They moved away from RxJS because they only wanted observables and shimmed in (or polyfilled) the ES-Next implementation instead of getting the rest of the RxJS  that they're not using.

[00:46:40] What's coming next?

They're finishing Dojo 2. They're polishing the system for build UI components and architecture and structuring the app. They plan to release before the end of the year.

They're also wrapping up development on the Data Grid, which only renders what shows on the screen plus a little instead of millions of rows.

[00:49:08] Testing

They've got intern.

It pulls together unit testing, functional testing, continuous integration hooks, accessibility testing, etc.

It's rewritten in TypeScript to take advantage of modern JavaScript.

The Dojo CLI uses intern as the default test framework.

Kitson build the test-extras library to help with Dojo testing with intern.

Dojo Links

Picks

Cory

Aimee

Chuck

Dylan

Kitson

 




son

MJS 040: Kitson Kelly

Panel: 

Charles Max Wood

Guest: Kitson Kelly

This week on My JavaScript Story, Charles speaks with Kitson Kelly. Kitson is a return guest, previously on JavaScript Jabber 277. Kitson is the CTO at SitePen, and has been working and maintaining Dojo 2 for the last couple years.

Kitson talks about his journey as a developer. First, sparking his interest with old Atari games and getting his first computer in his early years.  Kitson talks about his education background and introduction to computers in high school and hang out with other in the same programming niche. Kitson talks about his challenges not having a degree in computer science, but still very successful as a developer after climbing the corporate latter.

In particular, we dive pretty deep on:

  • Atari Games and old first computer
  • Hangout with the computer nerds
  • Community college
  • No actual formal computer science degree
  • Tech Support and Self Taught
  • Challenges with not degree
  • Climbing the latter
  • Troubles even with a degree
  • Is a degree in computer science really needed?
  • Experience verses degree
  • Working with other people is important
  • Getting into JavaScript and Dojo
  • What kept you working in JavaScript
  • How do you get to being CTO and SitePen?
  • What are you most proud of with the work on Dojo
  • Contributions
  • Side Projects  - Dojo 2
  • and much, much more!

Links: 

Picks:

Kitson

Charles




son

JSJ 302: Evaluating Web Frameworks with Kitson Kelly

Panel: 

Charles Max Wood

Aimee Knight

AJ O'Neal

Special Guests: Kitson Kelly

In this episode, the JavaScript Jabber panelists talk with Kitson Kelly about evaluating web frameworks. Kitson is currently in Australia working for ThoughtWorks as a principle technologist. He has written many articles on frameworks and urges that people don’t get stuck on one framework in their programming. He talks about how using only frameworks that you know could hurt you in the long run. This episode is great for understanding when to use certain JavaScript frameworks and how branching out from what is comfortable might make your job easier.

In particular, we dive pretty deep on:

  • Articles on web frameworks
  • How do you pick a JavaScript framework to use?
  • The framework depends on your changing needs
  • Recommending less popular frameworks
  • Angular, Ember, React
  • React vs Redux
  • Certain domains with different frameworks?
  • Each framework takes a different approach
  • How to decide which framework to use?
  • Only give it a couple days to see if your app works with the framework
  • Is it ever appropriate to not use a certain framework?
  • Frameworks are there to make your job easier
  • Don’t be afraid to try new frameworks
  • Choose a framework that will “be there tomorrow”
  • What is the future for frameworks?
  • Experiment and be honest with what you need
  • And much, much more!

Links:

Picks:

Charles

Aimee

AJ

Kitson




son

MJS 053: Quincy Larson

Panel: Charles Max Wood

Guest: Quincy Larson

This week on My JavaScript Story, Charles speaks with Quincy Larson. Quincy created Free Code Camp, whose goal is to build a huge community of people who will then contribute to the project so that they can help more people learn code for free. Quincy first got into programming when he wanted to find a way to get teachers out from behind the computer and into the classrooms. This revealed to him how powerful technology was and really got him interested in learning more code. He feels very strongly about the importance of accessibility and strived to make his camp as accessible as he could so he could reach the most people with it. 

In particular, we dive pretty deep on:

  • Free Code Camp
  • How did you first get into programming?
  • Previously a school director and teacher
  • AutoHotkey
  • How did you get into JavaScript?
  • Focused on the problem of learning the code
  • Free Code Camp was his main focus as a programmer
  • The importance of accessibility
  • Free Code Camp curriculum
  • New update launching soon
  • Build projects in order to get a certificate
  • 6 certificates in total
  • What is the work breakdown with Free Code Camp?
  • Editorial staff now
  • Free Code Camp YouTube Channel
  • Writes on Medium
  • Loves the fact that he gets to help others and positively affect their lives
  • What else are you working on now?
  • Beta.freeCodeCamp.org
  • Expanding Free Code Camp Directory
  • And much, much more!

Links:

Picks

Charles

Quincy

  • The state of machine learning in JavaScript
  • Tensor Fire




son

JSJ 313: Light Functional JavaScript with Kyle Simpson

Panel:

  • AJ ONeal
  • Aimee Knight
  • Joe Eames

Special Guests: Kyle Simpson

In this episode, the JavaScript Jabber panelists discuss light functional JavaScript with Kyle Simpson. Kyle is most well-known for writing the books You Don’t Know JS and is on the show today for his book Functional-Light JavaScript. They talk about what functional programming is, what side-effects are, and discuss the true heart behind functional programming. They also touch on the main focus of functional programming and much more!

In particular, we dive pretty deep on:

  • You Don’t Know JS
  • Functional-Light JavaScript
  • From the same spirit as first books
  • JavaScript
  • Documents journey of learning
  • What does Functional Programming mean?
  • Functional programming is being re-awoken
  • Many different definitions
  • History of functional programming
  • Programming with functions
  • What is a function?
  • “A collection of operations of doing some task” is what people think functions are
  • What a function really is
  • Map inputs to outputs
  • What is a side-effect?
  • Side-effects should be intentional and explicit
  • The heart of functional programming
  • Refactoring
  • Can’t write a functional program from scratch
  • What functional programming focuses on
  • Making more readable and reliable code
  • Pulling a time-stamp
  • Defining a side-effect
  • And much, much more!

Links:

Picks:

Aimee

AJ

Joe

Kyle




son

MJS 061: Kyle Simpson

Panel: Charles Max Wood

Guest: Kyle Simpson

This week on My JavaScript Story, Charles speaks with Kyle Simpson. Kyle is most well-known for being the writer of You Don’t Know JS. He first got into programming because his friend’s dad was a programmer and he was hooked by the software side of computers. He grew up writing games with QBasic and Turbo Pascal and then in his teens did some client projects. He was very much a self-taught programmer and ended up sticking with it into his career today. They talk about what led him to JavaScript and what he is doing currently.

In particular, we dive pretty deep on:

  • Kyle intro
  • You Don’t Know JS
  • How did you first get into programming?
  • Dad’s friend was a programmer
  • Dad built computers
  • Wrote games with QBasic and Turbo Pascal
  • Some client projects in teen years
  • Very much self-taught programmer
  • CS degree in college
  • First professional job at a biotech company
  • Do you feel people need to get a CS degree these days?
  • Grateful for his degree
  • What engineering taught him
  • Striving to understand why and how things work
  • Don’t need a CS degree but you do need a certain mindset
  • Valuable but not necessary
  • What led you to JavaScript?
  • Web Portal at his college
  • What made you want to deepen your knowledge of JS?
  • What are you working on now?
  • And much, much more!

Links:

Picks

Charles

  • Template Weeks
  • Working Out

Kyle