sa

Seventh case of rhino poaching in North Bengal wildlife sanctuary



  • DO NOT USE West Bengal
  • India

sa

Interview: ‘LBA opened doors to resolve other issues like Teesta’, says Bangladesh Dy High Commissioner



  • DO NOT USE West Bengal
  • India

sa

Netaji files with Bengal govt to be declassified, says West Bengal CM Mamata Banerjee



  • DO NOT USE West Bengal
  • India

sa

Trinamool Kisan O Khetmojur Congress: To launch its front for farmers, Trinamool returns to Singur



  • DO NOT USE West Bengal
  • India

sa

Can recognise madrasas but cannot pay its teachers: Mamata Banerjee



  • DO NOT USE West Bengal
  • India

sa

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!

 




sa

Chronicling America: Historic American Newspapers: 119 YEARS AGO: "The Gobble," San Francisco Call," Nov. 24, 1901

Not enjoying the Thanksgiving spirit? Here's an unusual poem by Clarence V. Odell describing the turkey-eat-turkey dynamic of a 'gobble,' another name for a flock of the big birds (also known as a 'rafter').

"NINE greedy gobblers having a fete,
One ate his head off, then there were eight...."

Pity the turkeys... it rarely ends well for them!

Read more about it and follow us all the time on Twitter @librarycongress #ChronAm!




sa

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.




sa

Arsenic metallurgy : proceedings of a symposium sponsored by the Copper, Nickel, Cobalt Committee ... [et al.] of TMS (the Minerals, Metals & Materials Society) held during the TMS 2005 Annual Meeting : San Francisco, California, USA, February 13-17,




sa

Converter and fire refining practices : proceedings of a symposium held at the 2005 TMS Annual Meeting : San Francisco, California, USA, February 13-17, 2005 / sponsored by the Pyrometallurgy Committee of the Extraction and Processing Division (EPD) of TM

Converter and Fire Refining Practices Symposium (2005 : San Francisco, Calif.)




sa

EPD Congress 2005 [electronic resource] : proceedings of sessions and symposia sponsored by the Extraction and Processing Division (EPD) of TMS (The Minerals, Metals & Materials Society), held during the 2005 TMS Annual Meeting in San Francisco, Calif

EPD Congress (2005 : San Francisco, Calif.)




sa

ALTA 2000 Nickel/Cobalt-6 : SX fundamentals, contactor design & application to Ni/Co processes, Thursday 18th May 2000, Hotel Rendezvous, Perth, Western Australia / Roger Cusack




sa

Microbial processing of metal sulfides / edited by Edgardo R. Donati and Wolfgang Sand




sa

Impurity control and disposal in hydrometallurgical processes : 24th annual Hydrometallurgical Meeting : proceedings of the International Symposium on Impurity Control and Disposal in Hydrometallurgical Processes, Toronto, Ontario, Canada, August 21-24, 1

International Symposium on Impurity Control and Disposal in Hydrometallurgical Processes (1994 : Toronto, Ont.)




sa

Gold 100 : proceedings of the International Conference on Gold / [organized by] the South African Institute of Mining and Metallurgy (SAIMM), in association with the Chamber of Mines of South Africa (COM), the Council for Mineral Technology (MINTEK), and

International Conference on Gold (1986 : Johannesburg, South Africa)




sa

Impurity control & disposal : proceedings of the CIM 15th Annual Hydrometallurgical meeting, held in conjunction with the CIM 24th Annual Conference of Metallurgists, Vancouver, Canada, 1985

Hydrometallurgical Meeting (15th : 1985 : Vancouver, B.C.)




sa

Proposal for processing ores of rarer metals of Western Australia

Tantalite Limited




sa

Hydroprocess 2008: II International Workshop on Process Hydrometallurgy : 14-16 May 2008, Santiago, Chile / editors, Jorge Menacho & Jesús Casas

International Workshop on Process Hydrometallurgy (2nd : 2008 : Santiago, Chile)




sa

Heroic misadventures : Australia : four decades - full circle, 1970-2009 / by Ron Manners

Manners, Ron (Ron B.)




sa

International Peirce-Smith converting centennial : held during TMS 2009 annual meeting & exhibition : San Francisco, California, USA : February 15-19, 2009 / edited by Joël Kapusta and Tony Warner




sa

EPD Congress 2012 : held during the TMS 2012 annual meeting & exhibition, Orlando, Florida, USA, March 11-15, 2012 / edited by Lifeng Zhang, Joseph A. Pomykala, Arjan Ciftja ; proceedings symposia sponsored by the Extraction & Processing Division

EPD Congress (2012 : Orlando, Fla.)




sa

Modern physical metallurgy and materials engineering / contributors, William A. Brantley, Satish B. Alapati et al ; [edited and compiled by Auris Reference Editorial Board]




sa

Handbook of lithium and natural calcium chloride : their deposits, processing, uses and properties / Donald E. Garrett (Saline Processors, Inc., Ojai, California)

Garrett, Donald E., author




sa

Concepts in physical metallurgy : concise lecture notes / A. Lavakumar (Veer Surendra Sai University of Technology, Odisha, India)

Lavakumar, A., author




sa

Franklin says sorry to SEBI for official’s remarks

Issue pertains to closure of MF entity’s six debt schemes




sa

Online transactions have surged post lockdown: Simpl

Average ticket size of medicine orders has doubled,it says




sa

Nissan rolls out Kicks 2020

Nissan India rolled out its compact sport utility vehicle Kicks 2020 with a host of new features across all seven variants with manual and X-tronic CV




sa

Safety apparatus goes for a toss at LG Polymers

‘Reasons for the accident yet to be ascertained’




sa

Gas leak: there is no further danger, says NDRF

‘Styrene vapour emissions have dropped considerably; may take up to 48 hours to declare it a safe zone’




sa

Govt. will take up safety audit of 86 industries, says Mekapati

‘It may take up to 48 hours to neutralise styrene vapours’




sa

013 JSJ Knockout.js with Steven Sanderson

The panelists discuss Knockout.js with Steven Sanderson




sa

052 JSJ Node & NPM with Isaac Schlueter

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013! Panel Isaac Schlueter (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:33 - Isaac Schlueter Introduction NPM Node 02:33 - Node Backstory v8 SpiderMonkey Joyent 05:37 - Node and New Features Node.js v0.10.0 Manual & Documentation v8 13:30 - Language Accommodations TC39 Luvit libev libuv eventmachine @ GitHub Zedd Shaw 22:32 - C++ LibEVN - Node in C 25:19 - New Streams API 30:37 - Semantic Versioning Experimental versions 33:01 - NPM 39:30 - Issac’s Future 41:06 - Discovery Recommendation Engine Exposing Quality of Modules Code Quality 47:18 - Advice for Adopting Node Joyent The Node Firm StrongLoop Iris Couch Picks Wild at Heart Revised and Updated: Discovering the Secret of a Man’s Soul by John Eldredge (Joe) The Aquabats (Jamison) User Feedback: Isaac Schlueter (Jamison) Fluent 2013 (Merrick) Code: JAVAJAB So Good They Can’t Ignore You: Why Skills Trump Passion in the Quest for Work You Love by Cal Newport (Merrick) StarCraft II (Merrick) Moving to GruntJS: AJ ONeal (AJ) Intro to JSHint: Training Wheels for JavaScript: AJ ONeal (AJ) Gimp (AJ) And Another Thing... (The Hitchhiker’s Guide to the Galaxy) by Eoin Colfer Free Music Downloads on Last.fm (AJ) Blackbird Blackbird - Hawaii (AJ) Hazel (Chuck) Mac Power Users (Chuck) Nonviolent Communication: A Language of Life (Isaac) Next Week Software Team Dynamics Transcript CHUCK:  You all ready? JAMISON:  Super ready. AJ:  So ready.  JOE:  I was born ready. MERRICK:  I was molded by ready. [Laughter] CHUCK:  Alright. [Hosting and bandwidth provided by the Blue Box Group. Check them out at  Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK:  Hey everybody and welcome to Episode 52 of the JavaScript Jabber Show. This week on our panel, we have Joe Eames. JOE:  Hey there. CHUCK:  We also have Merrick Christensen. MERRICK:  What up? CHUCK:  AJ O’Neal. AJ:  How do you decide the order each week? CHUCK:  I just make it up. AJ:  Okay. It’s only random. CHUCK:  And Jamison Dance. JAMISON:  Hey guys. CHUCK:  I’m Charles Max Wood from DevChat.tv and we have a special guess that’s Isaac. I know I’m going to destroy your last name. Let me see if I can say it… You say it. ISAAC:  Schlueter. CHUCK:  Schlueter! ISAAC:  Yeah. AJ:  That’s so much easier than I’d ever imagined. [Laughter] ISAAC:  I wanted to hear Chuck keep going on that. JOE:  Yeah, it’s pretty good. CHUCK:  It has extra constantans in it, it throws me off. And then extra vowels. MERRICK:  I heard him just crying, “Shu...shu…” [Laughs] ISSAC:  I have relatives that can’t say it right and it’s their name so… [Laughter] CHUCK:  Alright. Well, do you want to introduce yourself real quickly since you haven’t been on the show? ISAAC:  Sure. I am the author of NPM and I’ve been maintaining Node for the last -- Jesus! It’s been almost a year and a half now, a year or so. CHUCK:  So just a couple small projects that nobody’s heard of, right? [Laughter] ISAAC:  Yeah, a handful of little things on GitHub. CHUCK:  Is there anything else we have to know about you? ISAAC:  I enjoy changing my Twitter avatar to things that are funny or disturbing or preferably both. [Laughter] ISAAC:  And, I don’t know. CHUCK:  Alright. Well, we really appreciate you coming on the show. AJ:  That is pretty disturbing dude. You’ve got your face on a really overweight cat.




sa

094 JSJ BonsaiJS with Tobi Reiss

The panelists talk to Tobi Reiss, the creator of BonsaiJS.




sa

099 JSJ npm, Inc. with Isaac Schlueter, Laurie Voss, and Rod Boothby

The panelists discuss npm, Inc. with Isaac Schlueter, Laurie Voss, and Rod Boothby.




sa

127 JSJ Changes in npm-Land with Forrest Norvell, Rebecca Turner, Ben Coe, and Isaac Z. Schlueter

The panelists discuss changes in the npm package manager with Forrest Norvell, Rebecca Turner, Ben Coe, and Isaac Z. Schlueter.




sa

144 JSJ Marionette.js 2.0 with Sam Saccone

The panelists talk to Sam Saccone about Marionette.js 2.0.




sa

147 JSJ io.js with Isaac Schleuter and Mikeal Rogers

The panelists talk to Isaac Schleuter and Mikeal Rogers about io.js.




sa

152 JSJ GraphQL and Relay with Nick Schrock and Joe Savona

02:25 - Nick Shrock Introduction

02:40 - Joe Savona Introduction

02:49 - Facebook and Open Source

04:10 - GraphQL and Relay Overview

  • React for Your Data” / Component-based Data Fetching

06:11 - Unique to React? Passing Down Through the Hierarchy

10:09 - Queries

  • Tooling
    • Graphical
  • Pulling Definitions

14:13 - Why Do I Care? (As Someone Not Working at Facebook)

15:21 - Building Applications with GraphQL and Relay

19:01 - GraphQL and Building Backends

21:42 - Drivers and Client Software

  • Synthesize => Code Generation
  • Flux
  • Container Classes

30:58 - Reusing Components

31:50 - Data Management

34:25 - Open Source

36:40 - Reflecting Backend Constraints? (Optimizing the Backend)

43:02 - Relationships => Logs

46:24 - Security

47:16 - Replacing REST (Adopting New Technology)

  • “The Progressive Disclosure of Complexity”

52:14 - What You Wouldn’t Use GraphQL or Relay For

  • Games

Picks

Another Eternity by Purity Ring (Jamison)
JT Olds: What riding a unicycle can teach us about microaggressions (Jamison)
OCReMix (AJ)
Duet Display (Chuck)
Summoners War (Chuck)
Thinking, Fast and Slow by Daniel Kahneman (Joe)
Learning a new language (Joe)

Other People: What Kind of Man (Nicolas Jaar remix) - Florence & the Machine (Nick)
Boosted Boards (Nick)
The Onion: Succession Of Terrible Events Fails To Befall 33-Year-Old Riding Longboard To Digital Media Job (Nick)




sa

168 JSJ The Future of JavaScript with Jafar Husain

03:04 - Jafar Husain Introduction

03:29 - The Great Name Debate (ES6, ES7 = ES2015, ES2016!!)

05:35 - The Release Cycle

  • What This Means for Browsers

08:37 - Babel and ECMAScript

09:50 - WebAssembly

13:01 - Google’s NACL

13:23 - Performance > Features?

20:12 - TC39

24:22 - New Features

  • Decorators
    • Performance Benefit?

28:53 -Transpilers

34:48 - Object.observe()

37:51 - Immutable Types

45:32 - Structural Types

47:11 - Symbols

48:58 - Observables

52:31 - Async Functions

57:31 - Rapid Fire Round - When New Feature Will Be Released in ES2015 or ES2016

  • let - 15
  • for...of - 15
  • modules - 15
  • destructuring - 15
  • promises - 15
  • default function argument expressions - 15
  • asyncawait - 16

Picks

ES6 and ES7 on The Web Platform Podcast (AJ)
Binding to the Cloud with Falcor Jafar Husain (AJ)
Asynchronous JavaScript at Netflix by Jafar Husain @ MountainWest Ruby 2014 (AJ)
Let's Encrypt on Raspberry Pi (AJ)
adventures in haproxy: tcp, tls, https, ssh, openvpn (AJ)
Let's Encrypt through HAProxy (AJ)
Mandy's Fiancé's Video Game Fund (AJ)
The Murray Gell-Mann Amnesia Effect (Dave)
The Majority Illusion (Dave)
[Egghead.io] Asynchronous Programming: The End of The Loop (Aimee)
Study: You Really Can 'Work Smarter, Not Harder' (Aimee)
Elm (Jamison)
The Katering Show (Jamison)
Sharding Tweet (Jamison)
The U.S. Women's National Soccer Team (Joe)
mdn.io (Joe)
Aftershokz AS500 Bluez 2 Open Ear Wireless Stereo Headphones (Chuck)
Autonomy, Mastery, Purpose: The Science of What Motivates Us, Animated (Jafar)
Netflix (Jafar)
quiescent (Jafar)
Clojurescript (Jafar)




sa

197 JSJ Auth0 with Kassandra Perch

02:03 - Kassandra Perch Introduction

02:46 - Auth0

04:10 - Centralized Auth Services: Handing Out User Data to Third Parties

05:32 - Security, Storage, and Compliance

08:48 - Managing Session Data

09:35 - Cookies vs JSON Web Tokens (JWTs)

  • How Authentication Works

12:47 - OAuth

14:12 - Identification, Authorization, and Authentication

20:16 - Auth0 Infrastructure

22:10 - Using Node

23:06 - The Backend

24:25 - Documentation and Education

36:42 - The Value of OpenID Connect

38:25 - Identity

Picks

Add AJ on Tri-Force Heroes (AJ)
Making a Murderer (AJ)
Mazie's Girl Scout Digital Cookie Site (Aimee)
React (with Introduction to Flux Architecture) (Aimee)
Jordan Scales: Let’s Make A Webpage In 2016 (Jamison)
building-brooklynjs (Jamison)
Cult of the Party Parrot (Jamison)
CSS-Tricks (Jamison)
Auth0 Docs (Kassandra)
OpenID Foundation (Kassandra)
Mario & Luigi: Paper Jam (Kassandra)




sa

214 JSJ Pebble with Heiko Behrens and François Baldassari

Check out Newbie Remote Conf!

 

02:11 - Heiko Behrens Introduction

02:42 - François Baldassari Introduction

03:04 - JavaScript and Pebble

06:40 - Watch vs Phone

09:32 - Memory Constraints and Code Size Limitations

26:24 - Advantages of Writing in JavaScript

32:09 - Capabilities of the Watch

37:08 - Running Web Servers

39:29 - Resources

41:58 - Voice Capabilities

43:06 - UI For the Round Face vs Square Face

46:18 - Future Pebble Milestones

 

Picks

 

See Also




sa

244 JSJ Visual Studio with Sam Guckenheimer

1:05 - Introducing Sam Guckenheimer

2:45 - Continuous integration with Visual Studio

4:15 - Visual Studio on Macs

5:55 - Is Visual Studio just for C#?

8:45 - Container support and the Cloud

14:20 - Docker and Visual Studio

17:40 - Communicating with multiple services

24:15 - Talking to clients about change and working with transformation

33:00 - Telemetry and collecting data

37:50 - Xamarin forms

47:50 - Deployment with changed endpoints

Picks:

Daplie Wefunder (AJ)

Unroll.Me (Charles)

Focused Inbox on Outlook (Sam)

WhiteSource (Sam)

The Girl On The Train (Sam)

The Pigeon Tunnel by John le Carre (Sam)




sa

MJS #004: Isaac Schlueter

On today's episode, Charles Max Wood shares My JS Story Isaac Schlueter. Isaac is the co-founder and chief executive officer at NPM. Listen to his interesting javascript story, and learn how you can connect with him!




sa

JSJ 249 Loading and Optimizing Web Applications with Sam Saccone and Jeff Cross

On today's episode, Charles Max Wood, Joe Eames, and Aimee Knight discuss Loading and Optimizing Web Applications with Sam Saccone and Jeff Cross. Tune in to their interesting talk, and learn how you can improve user experience and performance with better loading!




sa

JSJ 252 The 20th Anniversary of Visual Studio with Bowden Kelly

Javascript Jabber is hosted this week by Joe Eames, Aimee Knight, AJ O'Neal, Cory House, Charles Max Wood and their special guest Bowden Kelly. Bowden is a program manager at Microsoft and he shares some insight into the new features in Visual Studio 2017 RTM with Bowden Kelly.




sa

JSJ 269 Reusable React and JavaScript Components with Cory House

JSJ 269 Reusable React and JavaScript Components with Cory House

On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in!

[00:01:35] – Overview

We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done.

Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. 

[00:04:50] – Browser support issue

The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components.

Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead.

[00:07:50] – Polymer

The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser.   

[00:14:20] – Standards are dead

No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library.

Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about.

[00:17:05] – Libraries making reusable components

There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well.

As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there

[00:21:20] – Why opt for reusable components

Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse.

As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components.  

[00:31:20] – Rigid component vs. flexible component

As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder.

We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough.

Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later.

[00:36:00] – Reusable components

The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously.

We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue.

[00:42:45] – Component development on teams

Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need.

[00:47:45] – Mobile to web crossover

Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application.

[00:50:00] – Challenge

Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?"

Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember.

Picks

Cory House

Joe Eames

Aimee Knight

Charles Max Wood

JSJ 269 Reusable React and JavaScript Components with Cory House

On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in!

[00:01:35] – Overview

We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done.

Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. 

[00:04:50] – Browser support issue

The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components.

Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead.

[00:07:50] – Polymer

The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser.   

[00:14:20] – Standards are dead

No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library.

Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about.

[00:17:05] – Libraries making reusable components

There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well.

As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there

[00:21:20] – Why opt for reusable components

Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse.

As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components.  

[00:31:20] – Rigid component vs. flexible component

As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder.

We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough.

Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later.

[00:36:00] – Reusable components

The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously.

We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue.

[00:42:45] – Component development on teams

Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need.

[00:47:45] – Mobile to web crossover

Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application.

[00:50:00] – Challenge

Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?"

Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember.

Picks

Cory House

Joe Eames

Aimee Knight

Charles Max Wood




sa

JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

This episode is a live episode from Microsoft Build where AJ O'Neal and Charles Max Wood interview Mike Ammerlaan and Vesa Juvonent about building extensions for SharePoint with JavaScript.

[00:01:28] Mike Ammerlaan introduction
Mike has worked at Microsoft for a long time on multiple Microsoft products and projects. He's currently on the Office Ecosystem Marketing Team.

[00:01:52] Vesa Juvonen introduction
Ves a is Senior Program Manager for the SharePoint Splat team. He's been with Microsoft for about 11 years and manages the community and documentation for the SharePoint framework.

[00:02:18] What is the SharePoint Framework?
This is how you write SharePoint extensions with JavaScript. SharePoint has changed. It now works with common modern development tools and web development techniques. SharePoint consolodates the extension effort

[00:03:32] What is SharePoint?
File sharing, team sites, communication points for teams. Part of Office 365. You use Web Parts to add functionality to SharePoint. Web Parts provide functionality like widgets and are scoped to a team, group, or set of users. It's usually hosted on premises, but you can also use it with Office 365 as a hosted solution.

[00:05:56] What extensions can you build for SharePoint?
You can build widgets for your front page or intranet. You can also add user management or data management or document management.

Examples:

  • Dashboards
  • Mini Applications
  • Scheduling and Time Tracking
  • Document Storage
  • Source code repositories

[00:07:39] What is WebDAV and how does it relate?
WebDAV is a protocol for accessing documents and SharePoint supports it among other protocols for managing documents.

[00:08:36] Do I have to build front-end and back-end components to get full functionality?
You can build the front-end UI with Angular and other frameworks. And then build a service in Azure on the backend. The backend systems can then access Line of Business systems or other data systems.

It really does take multiple skill sets to build extensions for SharePoint.

[00:11:10] SharePoint on Mobile
There is a mobile web app and the Web Parts work through the mobile application. You can also use any browser to connect to the application.

[00:12:08] Building extensions with standard Angular or React component libraries
There are standard Yeoman templates. You can also pull in the components through React or Angular just like what Microsoft does.

Newer Angular versions are designed for Single Page Apps and SharePoint isn't necessarily set up to work that way. The Web Parts are isolated from each other and Angular requires some workarounds.

[00:14:30] Getting around sandboxing
Google and Microsoft are talking to each other to see how to work around this when there are multiple sandboxed applications that can't talk to each other in very simple ways.

[00:15:39] Application library or naming collisions if my UI uses different versions or clobber page wide settings
There are guides for a lot of this. React does a bunch of the isolation work.

Addons are iframed in and an API token is given to grant access to the data and APIs.

Microsoft also reviews and approves plugins.

[00:18:30] How do you get started and make money at this?
Look at the SharePoint store. You can build things through websites and pages and offer the plugins through the store.

You can request a SharePoint tenant installation from the Microsoft Dev Tools for free. Then you can build into the tenant site. The rest of the tools are available on npm.

SharePoint Developer Tools

[00:22:13] Automated testing for SharePoint extensions
Unit testing is built in for JavaScript. Testing the UI's require you to sign into Office 365. There are people doing it, though.

[00:22:54] Building internal-only extensions
SharePoint is an enterprise tool, so a lot of enterprises may not want to install extensions from the store. You can definitely build and install private plugins for SharePoint setups. They also have their own backend systems that will require custom development.

[00:25:50] Office 365, SharePoint, and OneDrive
Office 365 is used by people across many different sized organizations and SharePoint is much more enterprise. Office 365 tools store files and information in SharePoint.

What about OneDrive versus Sharepoint? OneDrive is focused for one person. SharePoint is focused around a team. But they have the same APIs and use the same technology stack.

[00:29:05] The history and future of SharePoint
It started out on premises and has moved to the cloud. The SharePoint team is working to keep it available and useful in the modern cloud based era.

[00:30:25] What does the API footprint look like?
It spans modifying lists, data objects, attributes, items in a list, put Web Parts on a page, modify the experience, and manage and modify access, users, and documents. SharePoint is a way of building a way of conveying information.

SharePoint is layers of data and scopes.

[00:35:26] Tutorials and Open Source
dev.office.com
The Sharepoint framework is not open source yet, but they're working on that. They also need to open source the Yeoman templates.
Open source samples are available at github.com/sharepoint.

Picks

Charles Max Wood

  • BlueTick
  • Zapier
  • ScheduleOnce
  • Moo.com
  • Advice: Take the time to go talk to people.
    Vesa adds that you should go to a session that's on something completely outside your experience.

AJ O'Neal

Mike Ammerlaan

Vesa Juvonen

  • Family

A big thanks to Microsoft, DotNetRocks, and Build!




sa

JSJ 283: A/B Testing with Nick Disabato

Panel:

Amy Knight

Charles Max Wood

Special Guests: 

Nick Disabato

In this episode, Java Script Jabbers talk with Nick Disabato. Nick is a newbie to JavaScript Jabber. Nick is the founder of Draft, an interaction design agency where he does research driven A/B testing of E-commerce business.

This is a practical episode for those who are running a business and doing marketing for the products and services. Nick talks about A/B testing for a number scenarios within the company, such as for websites, funnels, and various marketing mechanisms. Nick further goes into how this helps companies strategically increase revenue by changing things such as websites design or building funnels.

In particular, we dive pretty deep on:

  • Testing of changes of Copy, Websites, etc.
  • What does it mean of changes, Tools, Framework, Plugins, etc
  • Does it matter what tools you use? Framework that works within your stack
  • How do make we company money
  • Researching for the next test
  • Testing for conversion rate to decide which design to go implement - Variant
  • Responsibility for the designs
  • Feature and getting pay for the service
  • Learn more about the resources and Copy Hackers
  • Large organization or developers, or a QA department
  • Optimization teams
  • Usability tests and coming up with A/B tests
  • Expertise
  • Why should be care?
  • And much more!

Links:

Draft

Nick Disabato

@nickd

ConversionXL

AB Testing Manual

Wider Funnels 

Copy Hackers

Picks:

Amiee

Charles

Nick




sa

MJS 042: Kassandra Perch

Panel: 

Charles Max Wood

Guest: Kassandra Perch

This week on My JavaScript Story, Charles speaks with Kassandra Perch. Kassandra is a return guest from JavaScript Jabber episode 197. Kassandra is a developer relations engineer for IOpipe, that does AWS Lambda monitoring and visibility in the server-less space. 

Kassandra talks about her journey into program through game sharks or programming game cartridges. Also, furthering her interest in programming was taking computer science courses in college, and getting a part-time job in the technology field during college while networking. Kassandra shares her favorite contributions to javascript and open source projects. 

In particular, we dive pretty deep on:

  • How did you get into programming? Game Sharks
  • Game Cartridges
  • Austin Meetup Group and JavaScript
  • Working in the open source community 
  • College courses
  • Contributions - Nodebotanist 
  • Interest in education  and being autistic 
  • Child of a teacher 
  • Serving the community 
  • Helping people with projects 
  • IOT - Internet of Things
  • Building Robots
  • Serverless 
  • What are you working on now? 
  • AVR Girl
  • and much, much more!

Links: 

Picks

Kassandra

Charles 




sa

MJS 043: Nick Disabato

Panel: 

Charles Max Wood

Guest: Nick Disabato

This week on My JavaScript Story, Charles speaks with Nick Disabato. Nick is a return guest how was recent on JavaScript Jabber episode 283   talking about AB testing. Also, Nick is an interaction designer from Chicago and runs a consultancy called Draft, who do research AB testing for online stores to increase conversion rate without increase ad spend. Nick talks about his current work, and his journey into programming, more on testing, and contributions to the JavaScript Community.

In particular, we dive pretty deep on:

  • How much programming do you do day today?
  • Programming activities
  • Interacting with programmers to deliver products
  • What was your introduction to programmer
  • Logo - Turtle
  • Cue Basic
  • How did that get you to where you are today?
  • Did not want to be a mathematician
  • Never been to art school?
  • Being a creative person but not visual
  • Describe the creative, design, position you are in.
  • Wire Frames
  • Verbal communication
  • Web development, etc.
  • Front facing pages
  • How did you get into JavaScript and how much do you have to know?
  • Where are the bottlenecks?
  • Which framework is the best?
  • What are you working on now?
  • and much, much more!

Links: 

Picks

Charles

Nick