International Conference on Hardware/Software Codesign and Systems Synthesis [electronic journal].
2006 4th IEEE/ACM/IFIPHardware/Software Codesign and System Synthesis (CODES+ISSS) [electronic journal].
1834-2019 - IEEE Standard for Technology Supervision Code for Wind Turbine Rotor Systems [electronic journal].
Updates from the Veterans History Project (VHP): Code Girls Reunite!
"What did you do in the war, mommy?"
VHP commemorated WAVES' wartime contributions with a "Code Girl’s Reunion." This past weekend, NBCs “Sunday Today with Willie Geist” aired a story about this historic event, and interviewed a few of these living legends. If you missed it, you can watch it, here.
The mission of the Veterans History Project of the Library of Congress American Folklife Center is to collect, preserve and make accessible the personal accounts of U.S. veterans so that future generations may hear directly from veterans and better understand the realities of war. Learn more at http://www.loc.gov/vets. Share your exciting VHP initiatives, programs, events and news stories with VHP to be considered for a future RSS. Email vohp@loc.gov and place “My VHP RSS Story” in the subject line.
Visit VHP on Facebook.
Click here for more information.
Protease-Responsive Mass Barcoded Nanotranslaters for Simultaneously Quantifying the Intracellular Activity of Cascaded Caspases in Apoptosis Pathways
DOI: 10.1039/D0SC01534B, Edge Article
Quantitatively delineating the activation network of multiple proteases that participate in cellular processes is highly essential to understanding physiological and pathological states of cells. In this study, protease-responsive mass barcoded...
The content of this RSS Feed (c) The Royal Society of Chemistry
Binary code fingerprinting for cybersecurity: application to malicious code fingerprinting / Saed Alrabaee, Mourad Debbabi, Paria Shirani, Lingyu Wang, Amr Youssef, Ashkan Rahimian, Lina Nouh, Djedjiga Mouheb, He Huang, Aiman Hanna
Explore "Code Red" with Morehead Monday
In search of ʻAlī ibn Abī Ṭālib's codex: history and traditions on the earliest copy of the Qurʼān / Seyfeddin Kara ; with a foreword by James Piscatori
Neuroimaging, Software, and Communication [electronic resource] : The Social Code of Source Code / by Edison Bicudo
Podcast: Cracking the smell code, why dinosaurs had wings before they could fly, and detecting guilty feelings in altruistic gestures
This week, we chat about why people are nice to each other—does it feel good or are we just avoiding feeling bad—approaches to keeping arsenic out of the food supply, and using artificial intelligence to figure out what a chemical smells like to a human nose with Online News Editor David Grimm. And Stephen Brusatte joins Alexa Billow to discuss why dinosaurs evolved wings and feathers before they ever flew. And in the latest installment of our monthly books segment, Jen Golbeck talks with Bill Schutt, author of Cannibalism: A Perfectly Natural History. Listen to previous podcasts. [Image: Todd Marshall; Music: Jeffrey Cook]
What hunter-gatherer gut microbiomes have that we don’t, and breaking the emoji code
Sarah Crespi talks to Sam Smits about how our microbial passengers differ from one culture to the next—are we losing diversity and the ability to fight chronic disease? For our books segment, Jen Golbeck talks with Vyvyan Evans about his book The Emoji Code: The Linguistics Behind Smiley Faces and Scaredy Cats. Listen to previous podcasts. [Image: Woodlouse/Flickr; Music: Jeffrey Cook]
Race after technology : abolitionist tools for the new Jim code / Ruha Benjamin
The creativity code : art and innovation in the age of AI / Marcus du Sautoy
Worked examples for the design of concrete structures to Eurocode 2 / Tony Threlfall
[ASAP] One-Step Surface Modification to Graft DNA Codes on Paper: The Method, Mechanism, and Its Application
[ASAP] Extraction of Individual Spectra from Mixture Data Based on High-Resolution <sup>13</sup>C–<sup>13</sup>C NMR Correlation Spectrum and DECODE Procedure
Teacher stands up to Gujarat govt dress code, writes to Narendra Modi
Error-correcting linear codes [electronic resource] : classification by isometry and applications / Anton Betten [and others]
026 JSJ Code Organization and Reuse
188 JSJ JavaScript Code Smells with Elijah Manor
02:22 - Elijah Manor Introduction
- GitHub
- Blog
- LeanKit
- Eliminate JavaScript Code Smells (Elijah's Talk Abstract)
- A video containing the 30 min version of the talk: Eliminate JavaScript Code Smells
- The full slides (60 mins worth of material)
04:49 - What is a “Code Smell”?
10:21 - Copy/Paste Code Error
13:11 - Using ES6 to Eliminate Code Smells
15:48 - Refactoring Case Statements
21:29 - Juniors and Code Smells
- Code Reviews
27:29 - Isomorphic Code
31:12 - Framework Code Smells
33:47 - Identifying New Code Smells
36:33 - When Code Smells are OK
39:10 - Why use parameters?
Picks
Terms And Conditions May Apply (AJ)
Nodevember (Aimee)
Developer Tea (Aimee)
Jake Shimabukuro (Joe)
Screeps (Joe)
react-styleguide-generator (Elijah)
react-styleguidist (Elijah)
The Phantom Menace - What it Should Have Been (AJ)
Attack of the Clones - What it Should Have Been (AJ)
199 JSJ Visual Studio Code with Chris Dias and Erich Gamma
Check out allremoteconfs.com to get in on all the conference action this year -- from the comfort of your own home!
02:13 - Chris Dias Introduction
02:21 - Erich Gamma Introduction
02:31 - Visual Studio Code
03:49 - Built on Electron
04:25 - Why another tool?
- Visual Debugging
- Keybinding Support
08:12 - Code Folding
09:00 - Will people move from Visual Studio to Visual Studio Code?
12:06 - Language Support
18:06 - Visual Studio Code and Microsoft Goals
22:47 - Community Support and Building Extensions
28:31 - The Choice to Use Electron
32:41 - Getting VS Code to Work on the Command Line
35:02 - Tabs
38:49 - Visual Studio Code Uptake and Adoption
40:11 - Licenses
44:46 - Designing a UX for Developers
58:15 - Design Patterns
Picks
LEGO Star Wars: The Force Awakens Video Game - Announce Teaser Trailer (Joe)
Firebase (Joe)
Progress bar noticeably slows down npm install: Issue #11283 (Jamison)
Darkest Dungeon (Jamison)
Trek Glowacki Twitter Thread (Jamison)
Mogo Portable Seat (Chuck)
Clear Acrylic Wall Mountable 10 Slot Dry Erase Marker & Eraser Holder Organizer Rack (Chuck)
Bitmap Graphics SIGGRAPH'84 Course Notes (Erich)
Salsa (Chris)
The Microsoft Band (Chris)
Making a Murderer (Chris)
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)
215 JSJ ChakraCode with Guarav Seth Live from Microsoft Build 2016
This episode was recorded live from The Microsoft Build Conference 2016. In this episode we chatted with Gaurav Seth of Microsoft about ChakraCore. You can follow him on Twitter, or check out what he’s done over on GitHub.
Picks
- TypeScript (Gaurav)
- Richard Campbell and Carl Franklin from .NETRocks
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
- Parks and Recreation (Wade)
- VidAngel (Wade)
A special thanks again goes out to Richard Campbell and Carl Franklin from .NETRocks for putting this podcast series together! You rock!
231 JSJ Codewars with Nathan Doctor, Jake Hoffner, and Dan Nolan
3:23 Discussing the purpose and aim of Codewars
7:30 The process for building a program with Codewars
11:07 The UI and editor experience
12:55 The challenges faced when first building Codewars
14:23 Explaining PJAX
16:54 Building code on Codewars
21:24 The expanded use of KATA on Codewars
23:11 Practicing “solving problems” and how it translates to real world situations
34:00 How Codewars proves out the persistence of coders
36:41 How Codewars appeals to collaborative workers
44:40 Teachable moments on Codewars
49:40 Always check to see if Codewars is hiring. Codewars uses Qualified.io, which helps automate the hiring process.
PICKS:
Marrow Sci-fi book
Uprooted Fantasy book
“Write Less Code” blog post
“The Rands Test” blog post
Five Stack software development studio
“Stranger Things” on Netflix
Angular 2 Class in Ft. Lauderdale, Discount Code: JSJ
Lean Analytics book
Code book
Datasmart book
Letting Go book
239 JSJ Vets Who Code with Jerome Hardaway
00:55 - Introducing Jerome Hardaway
02:10 - Spouses and dependants of Vets Who Code
06:55 - Accepting and rejecting applicants
10:10 - The GI Bill
15:45 - Military language and coding
18:20 - PTSD, trauma, and coding
21:10 - Moving past the veteran stigma
25:45 - Military backgrounds as an asset for jobs
30:45 - The future of Vets Who Code
32:35 - How much does it cost to be part of the program?
36:15 - Is it easier or harder for Vets to get hired?
39:15 - Stories and memories
42:30 - Contributing to Vets Who Code
- Contact hello@vetswhocode.io to become a mentor
- Donate: https://vetswhocode.kindful.com/
- SwearJar
- Hiring managers please contact Jerome@vetswhocode.io
Picks:
Soft Skills Engineering Podcast (Dave)
Soft Skills Engineering Twitter (Dave)
Awesome Algorithms Github list (Aimee)
“The Churn” blog post by Bob Martin (Aimee)
The 12 Week Year by Brian P. Moran and Michael Lennington (Charles)
Vets Who Code (Jerome)
Practical Javascript (Jerome)
240 JSJ Visual Studio Code with Chris Dias
Previous Episodes with Visual Studio Code’s Team:
JSJ Episode 199, Visual Studio Code with Chris Dias and Erich Gamma
JSJ Episode 221, Visual Studio Code with Wade Anderson
1:45 - What’s new at Visual Studio Code
3:42 - Confusion with Javascript versus separate languages
7:15 - Choosing your tools carefully
8:20 - Integrated shell and docker extensions
12:05 - Agar.io Extensions and extension packs
16:15- Deciding what goes into Visual Studio Code and what becomes an extension
18:20 - Using Github Issues and resolving user complaints
22:08 - Why do people stray away from VS proper?
23:10 - Microsoft and VS legacy
27:00 - Man hours and project development
31:30 - The Visual Studio default experience
37:10 - What are people writing with VS Code?
39:20 - Community versus developer views of VS Code
41:40 - Using Electron
44:00 - Updating the system
44:50 - How is Visual Code written?
48:00 - The future of Visual Code Studios
Picks:
Don McMillan (AJ)
Daplie Wefunder (AJ)
Daplie (AJ)
Facebook feed blocker plug-in (Charles)
Tab Wrangler (Charles)
Smart Things (Chris)
Wood Pizza Ovens (Chis)
PJ Mark, Chris’ friend and marketer (Chris)
JSJ 259 Clean Code JavaScript with Ryan McDermott
On today's JavaScript Jabber Show, Charles, Joe, Aimee, Cory, and AJ discuss Clean Code JavaScript with Ryan McDermott. Ryan is a UX Engineer at Google and has been a professional developer for 5 years. He's focused on frontend Angular and backend node.js. Stay tuned to learn more about his current project with JavaScript!
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
JSJ 273: Live to Code, Don't Code to Live with 2 Frugal Dudes Sean Merron and Kevin Griffin
JSJ 273: Live to Code, Don't Code to Live with 2 Frugal Dudes Sean Merron and Kevin Griffin
This episode of JavaScript Jabber features panelists Aimee Knight, Cory House, and Charles Max Wood. Special guests Sean Merron and Kevin Griffin discuss how to live frugally. Tune in to hear their advice!
[00:02:14] Introduction to Sean and Kevin
Sean and Kevin are the hosts of the 2 Frugal Dudes Podcast. They are middle class software engineers. Sean works a 9 to 5 job, while Kevin owns a small business called Swift Kick. Swift Kick is a company that focuses on independent consulting, software development, and training companies for software development.
[00:05:50] Different Types of Financial Advisors
There is no legal reason that financial advisors have to work in your best interest. On the 2 Frugal Dudes Podcast, Sean and Kevin advise people to use fiduciary advisors. These types of advisors are not legally allowed to accept kickbacks from different funds. This means that they are more likely to help you to the best of their ability. They get paid for their services. Laws are currently changing so that everyone has to be a fiduciary advisor unless clients sign a specific form.
[00:10:00] What do I do with money left over at the end of the month that I can’t put into a 401K and Roth IRA?
They suggest that you put only the amount of money in your 401K that your company will match. Then, put the rest into a Roth IRA and max that out. Before you decide to do what next, you need to decide why you are saving money. When will you need the money? What will you need it for? Once you know the answer to these questions, you will be able to assess what your money will best be placed. For example, if you are saving to buy a house you need to put your money in a safe investment. A Roth IRA can be used as a savings vehicle or as an emergency fund. Sean believes that a Bank CD is the safest return you can get.
[00:14:30] Best Way to Save
For those who are self-employed, it is a good idea to have two emergency funds – a personal and a business fund. Business emergency funds should have five months of personal salary. Kevin built his up over two or three years and uses it as self-insurance.
Sean says that the employee world is different. For him, he only keeps the minimum amount in his emergency fund. He knows that he is in a field where his job is in high demand, so feels comfortable with being able to get a job quickly. For others, this may not be the case. Have to evaluate how much to save based on how long you think you may need the money.
[00:18:50] What is the first thing people should be doing for their own financial well being?
Kevin follows Dave Ramsey’s advice.
- Basic emergency fund. He uses $1,000. Most emergencies fall under that amount of money.
- Get rid of all consumer debt. This includes car payments, credit cards, and student loans. Mortgage is not consumer debt.
- Grow an emergency fund to three or six months of expenses.
- Investments. Setting up retirement funds, paying for college, or mortgages.
Sean values early retirement so he focuses on that. What does retirement mean to me? What does rich mean? You should always track your money through a budget. Then you can funnel money towards emergency funds and tackling debt.
Self-insurance means that you don’t have to worry about funds. It helps lower your stress knowing that you have your finances in order. It is a peaceful place to be and opens up opportunities for you. If someone has stressors in their life – for example, their car breaks down – and they have no money to fix it, they now have car and money problems. This stress can then potentially lead to other problems such as marriage problems. If the money to fix the broken car would have been there, it would alleviate stress.
[00:28:23] Difference between 401k, IRA, and Roth IRAs
A 401k is an employer provided, long-term retirement savings account. This is where you put in money before it is taxed. With this plan you are limited with the funds you can choose from to invest in.
IRAs are long-term retirement plans as well. The first type of IRA is a Traditional IRA, which is similar to a 401k. You get tax reduction for the money you put in the account. You pay taxes once you withdraw money. A Roth IRA is where you already pay taxes on money that you are putting in, but don’t have to pay taxes when withdrawing money. You can withdraw contributions at anytime without being penalized, you just can’t take out any earnings.
Another thing that is potentially good for early retirement is a Roth IRA conversion ladder. This is where you take money from a 401k and convert it into a Roth IRA and use it before 60 years old to fund early retirement.
Traditional IRAs are good for business owners looking for tax deductions now. An HSA (Health Savings Account) can also be used as a retirement device. It goes towards medical expenses if needed.
[00:34:20] Are there tools or algorithms I can use to figure this stuff out?
There are some. Portfolio Visualizer allows you to choose different portfolio mixes and put different amounts of money in each one. Portfolio Charts is similar to Portfolio Visualizer but gives nice graphics. Sean created a JavaScript website to help people use to figure out early retirement.
The hardest part is calculating return because you have to estimate what your return will be each year.
[00:39:00] Put Your Money Somewhere
The only bad investment is not making an investment. Even making a bad investment is better than not having any at all. Inflation eats away at money that is just sitting.
[00:42:05] If you get one of these advisors what advice should you be looking for?
Need someone that tries to understand your particular situation. “It depends” is very true and your advisor should know that. No two people will have the same financial goals. They should want to help reach your goals in the least costly way possible. Other things they should be able to do is be honest and help you control your emotions during upswings and downswings.
[00:47:08] Why index funds?
As an investor, you can buy an index fund cheaper than buying the whole index. A mutual fund will try to buy and sell the stocks in that index in order to follow the index's performance. As an investor, you have the opportunity to buy into a mutual fund that handles it for you.
You don’t have to independently invest in companies either. You can invest in an index instead that will look at, for example, top performing technology companies. It is usually a better value.
[00:53:33] How much do I invest in my business verses putting money into a Roth IRA or 401k?
Sean thinks it comes down to retirement goals. At some point you will want money to come in passively and retire in the future. If you can passively put X amount of dollars into your company then it can be looked at as a form of investment.
Kevin evaluates his business goals every quarter. He creates a business budget based off of those goals.
Picks
Cory
- Random Walk Down Wall Street by Burton Malkiel
- Rich Dad, Poor Dad by Robert Kiyosaki
- Ego is the Enemy by Ryan Holiday
Aimee
- Hacker News Thread – How to Not Bring Emotions Home With You
- Phantogram
Charles
Sean
Kevin
Links
- 2 Frugal Dudes Twitter
- Sean's Twitter
- Kevin's Twitter
- www.swiftkick.in
- www.kevgriffin.com
- http://earlyretirementroadmap.com/
- 2 Frugal Dudes Podcast
JSJ 289: Visual Studio Code and Live Sharing with Chris Dias and PJ Meyer LIVE at Microsoft Connect 2017
Panel:
Charles Max Wood
Special Guests:
Chris Dias
PJ Meyer
In this episode, Charles is at Microsoft Connect 2017 in NYC. Charles speaks with Chris Dias and PJ Meyer about Visual Studio Code and Live Sharing. Chris and PJ explain more on their demo at Microsoft Connect on Live Collaborative Editing and Debugging. Learn more about the new features with Visual Studio Code and the efficient workflows with screen sharing, and much more.
In particular, we dive pretty deep on:
- Demo of Live Collaborative Editing and Debugging explained
- New Features with VS Code
- Developer productive
- Debugging pain points
- Getting feedback
- New in VS Code
- Language support and Java Debugger
- Live Share
- Debugging from different machines and platforms
- Multi-Stage Docker File
- TypeScript compiler
- More on debugging with Cosmos db
- Debugging in the Cloud?
- Docker Extensions
- Data Bricks
- Updated python tools
- Coming up with Visual Studio Code in the next 6 months
- TypeScript and Refactoring
- Getting the word out about code - Word of mouth?
- Number of people using VS Code?
- Envision for what VS Code is becoming?
- Preparing for a keynote and processes?
- And much more!
Links:
- https://code.visualstudio.com
- https://github.com/chrisdias
- GitHub.com/microsoft
- @code
Picks:
Chris
- Pizza
PJ
- Deli
Charles
- Coupon Pass for tourist in NYC
JSJ 314: Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver LIVE at Microsoft Build
Panel:
- Charles Max Wood
Special Guests: Matt Hernandez and Amanda Silver
In this episode, the JavaScript Jabber/Adventures In Angular, panelists discuss Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver at Microsoft Build. Amanda is the director of program management at Microsoft working on Visual Studio and VS Code. Matt works on a mix between the Azure and the VS Code team, where he leads the effort to build the Azure extensions in VS code, trying to bring JavaScript developers to Azure through great experiences in VS Code. They talk about what’s new in VS Code, how the Azure extension works, what log points are, and much more!
In particular, we dive pretty deep on:
- Amanda intro
- Matt intro
- What’s new in VS Code?
- VS Code core
- VS Live Share
- Shared Terminal
- Now have Linux support
- Live Share is now public to the world for free
- What would you use Shared Terminal for?
- Are there other things coming up in VS Code?
- Constantly responding to requests from the community
- Live Share works for any language
- How does the Azure extension work?
- Azure App Service
- Storage extension
- Azure Cosmos DB
- What are log points?
- All a part of a larger plan to create a better experience for JS developers
- Visual debuggers
- Is it the same plugin to support everything on Azure?
- Want to target specific services that node developers will take advantage of
- And much, much more!
Links:
- Visual Studio
- VS Code
- Azure
- Live Share
- Azure Cosmos DB
- Microsoft Build
- Azure App Service
- Amanda’s GitHub
- @amandaksilver
- Matt’s GitHub
- @fiveisprime
Picks:
Charles
- Orphan Black
- Shout out to VS Code team
- Battle of the Books
Matt
- The Customer-Driven Playbook by Travis Lowdermilk
- The Speed of Trust by Stephen M.R. Covey
- Yes, And by Kelly Leonard
- Digital Marketing For Dummies by Ryan Deiss
- Ed Gets His Power Back Kickstarter
Amanda
- Microsoft Quantum Development Kit for Visual Studio Code
- Iggy Peck, Architect
- Tek by Patrick McDonnell
JSJ 316: Visual Studio Code with Rachel MacFarlane and Matt Bierner LIVE at Microsoft Build
Panel:
- Charles Max Wood
Special Guests: Rachel MacFarlane and Matt Bierner
In this episode, the JavaScript Jabber panelists discuss Visual Studio Code with Rachel MacFarlane and Matt Bierner, who are both developers on Visual Studio Code. They talk about what the workflow at Visual Studio Code looks like, what people can look forward to coming out soon, and how people can follow along the VS Code improvements on GitHub and Twitter. They also touch on their favorite extensions, like the Docker extension and the Azure extension and their favorite VS Code features.
In particular, we dive pretty deep on:
- Rachel and Matt intro
- Month to month workflow of Visual Studio Code
- VS Code JavaScript, TypeScript, and Mark Down support
- Working on GitHub and within the community
- Check out new features incrementally with insiders
- Community driven work
- What is coming out in Visual Studio Code?
- GitHub helps to determine what they work on
- Working on Grid View
- Improved settings UI
- Highlighting unused variables in your code
- Improvements with JS Docs
- Dart
- Visual Studio Extension API
- How do people follow along with the VS Code improvements?
- Follow along on GitHub and Twitter
- Download VS Code Insiders
- Have a general road map of what the plan is for the year
- Technical debt week
- What do you wish people knew about VS Code?
- Favorite extensions
- Docker extension and Azure extension
- And much, much more!
Links:
- Visual Studio Code
- JavaScript
- TypeScript
- Dart
- VS Code GitHub
- @Code
- VS Code Insiders
- Docker extension
- Azure extension
- Rachel’s GitHub
- Matt’s GitHub
- MattBierner.com
- @mattbierner
Sponsors
Picks:
Charles
- Orphan Black
- Avengers: Infinity War
- Fishing
Rachel
Matt
JSJ 408: Reading Source Code with Carl Mungazi
Carl Mungazi is a frontend developer at Limejump in London. He is a former journalist and switched to programming in 2016. Today the panel is discussing the benefits of reading source code. Carl began reading source code because he came into programming late and from a different field. His first project was with Mithril, and he read the source code and documentation to help him understand it. The panelists discuss how reading the source code has helped them and others to improve their coding. They compare reading and understanding source code to learning a foreign language, and discuss different methods.
Carl gives some suggestions for reading source code effectively. He advises people to be patient and step through the code. Accept that you will probably take a wrong path at some point or another, but the more you read, the more you will see patterns in how libraries are structured. He also encourages listeners to approach the authors, as they are often happy to lend a hand. Reading source code is an active approach of stepping through, debugging, putting in break points, checking the stack, and so forth. It’s also important to do outside research.
Since he has been reading source code, Carl has come to prefer plain JavaScript and libraries with as little code as possible. The panel discusses the benefits of small, simple libraries. Carl gives examples of techniques that he learned from reading a library source code and how he applied it to his own coding style. Reading source code has made him more careful about mixing logic and UI, and now he separates them. He also is more confident in seeing a problem, going to a preexisting library, and just importing the fix for that problem rather than the whole library. Reading source code is really about understanding the code you use in your project. It may slow you down, but you’ll be thankful in the long term because it will help you solve future bugs more efficiently. Carl talks more about his debugging process. He still relies on a debugger, but reading a library helps you to see patterns and guess the output of a function. These patterns persist in other libraries as well. Once you can guess correctly what will happen, you go back to reading the code and find instances where the output is unexpected, and fix it. Carl’s closing thoughts are that through reading source code, he has learned that although code is used differently in each library, they are all written in the same language, and therefore interrelated. This gave him more confidence in reading code because they’re all fundamentally the same. When a bug is discovered, he encourages listeners to look at the source code before googling a solution.
Panelists
-
AJ O’Neal
-
Dan Shapir
-
Steve Edwards
-
Charles Max Wood
Guest
-
Carl Mungazi
Sponsors
-
Sentry | Use the code “devchat” for $100 credit
Links
Picks
AJ O’Neal
Dan Shapir
Steve Edwards
Charles Max Wood
Carl Mungazi
-
Follow Carl @CarlMungazi and carlmungazi.com
The MaxCoders Guide To Finding Your Dream Developer Job
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is available on Amazon. Get your copy here today only for $2.99!
The MaxCoders Guide To Finding Your Dream Developer Job
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is available on Amazon. Get your copy here today only for $2.99!
[ASAP] Discovery of Potent Cyclic Sulfopeptide Chemokine Inhibitors via Reprogrammed Genetic Code mRNA Display
Food chemicals codex: by authority of the United States Pharmacopeial Convention / prepared by the Council of Experts
Redux modules and code-splitting
Twitter Lite uses Redux for state management and relies on code-splitting. However, Redux’s default API is not designed for applications that are incrementally-loaded during a user session.
This post describes how I added support for incrementally loading the Redux modules in Twitter Lite. It’s relatively straight-forward and proven in production over several years.
Redux modules
Redux modules comprise of a reducer, actions, action creators, and selectors. Organizing redux code into self-contained modules makes it possible to create APIs that don’t involve directly referencing the internal state of a reducer – this makes refactoring and testing a lot easier. (More about the concept of redux modules.)
Here’s an example of a small “redux module”.
// data/notifications/index.js
const initialState = [];
let notificationId = 0;
const createActionName = name => `app/notifications/${name}`;
// reducer
export default function reducer(state = initialState, action = {}) {
switch (action.type) {
case ADD_NOTIFICATION:
return [...state, { ...action.payload, id: notificationId += 1 }];
case REMOVE_NOTIFICATION:
return state.slice(1);
default:
return state;
}
}
// selectors
export const selectAllNotifications = state => state.notifications;
export const selectNextNotification = state => state.notifications[0];
// actions
export const ADD_NOTIFICATION = createActionName(ADD_NOTIFICATION);
export const REMOVE_NOTIFICATION = createActionName(REMOVE_NOTIFICATION);
// action creators
export const addNotification = payload => ({ payload, type: ADD_NOTIFICATION });
export const removeNotification = () => ({ type: REMOVE_NOTIFICATION });
This module can be used to add and select notifications. Here’s an example of how it can be used to provide props to a React component.
// components/NotificationView/connect.js
import { connect } from 'react-redux';
import { createStructuredSelector } from 'reselect';
import { removeNotification, selectNextNotification } from '../../data/notifications';
const mapStateToProps = createStructuredSelector({
nextNotification: selectNextNotification
});
const mapDispatchToProps = { removeNotification };
export default connect(mapStateToProps, mapDispatchToProps);
// components/NotificationView/index.js
import connect from './connect';
export class NotificationView extends React.Component { /*...*/ }
export default connect(NotificationView);
This allows you to import specific modules that are responsible for modifying and querying specific parts of the overall state. This can be very useful when relying on code-splitting.
However, problems with this approach are evident once it comes to adding the reducer to a Redux store.
// data/createStore.js
import { combineReducers, createStore } from 'redux';
Import notifications from './notifications';
const initialState = /* from local storage or server */
const reducer = combineReducers({ notifications });
const store = createStore(reducer, initialState);
export default store;
You’ll notice that the notifications
namespace is defined at the time the
store is created, and not by the Redux module that defines the reducer. If
the “notifications” reducer name is changed in createStore
, all the selectors
in the “notifications” Redux module no longer work. Worse, every Redux
module needs to be imported in the createStore
file before it can be added to
the store’s reducer. This doesn’t scale and isn’t good for large apps that rely
on code-splitting to incrementally load modules. A large app could have dozens
of Redux modules, many of which are only used by a few components and
unnecessary for initial render.
Both of these issues can be avoided by introducing a Redux reducer registry.
Redux reducer registry
The reducer registry enables Redux reducers to be added to the store’s reducer after the store has been created. This allows Redux modules to be loaded on-demand, without requiring all Redux modules to be bundled in the main chunk for the store to correctly initialize.
// data/reducerRegistry.js
export class ReducerRegistry {
constructor() {
this._emitChange = null;
this._reducers = {};
}
getReducers() {
return { ...this._reducers };
}
register(name, reducer) {
this._reducers = { ...this._reducers, [name]: reducer };
if (this._emitChange) {
this._emitChange(this.getReducers());
}
}
setChangeListener(listener) {
this._emitChange = listener;
}
}
const reducerRegistry = new ReducerRegistry();
export default reducerRegistry;
Each Redux module can now register itself and define its own reducer name.
// data/notifications/index.js
import reducerRegistry from '../reducerRegistry';
const initialState = [];
let notificationId = 0;
const reducerName = 'notifications';
const createActionName = name => `app/${reducerName}/${name}`;
// reducer
export default function reducer(state = initialState, action = {}) {
switch (action.type) {
case ADD_NOTIFICATION:
return [...state, { ...action.payload, id: notificationId += 1 }];
case REMOVE_NOTIFICATION:
return state.slice(1);
default:
return state;
}
}
reducerRegistry.register(reducerName, reducer);
// selectors
export const selectAllNotifications = state => state[reducerName];
export const selectNextNotification = state => state[reducerName][0];
// actions
export const ADD_NOTIFICATION = createActionName(ADD_NOTIFICATION);
export const REMOVE_NOTIFICATION = createActionName(REMOVE_NOTIFICATION);
// action creators
export const addNotification = payload => ({ payload, type: ADD_NOTIFICATION });
export const removeNotification = () => ({ type: REMOVE_NOTIFICATION });
Next, we need to replace the store’s combined reducer whenever a new reducer is registered (e.g., after loading an on-demand chunk). This is complicated slightly by the need to preserve initial state that may have been created by reducers that aren’t yet loaded on the client. By default, once an action is dispatched, Redux will throw away state that is not tied to a known reducer. To avoid that, reducer stubs are created to preserve the state.
// data/createStore.js
import { combineReducers, createStore } from 'redux';
import reducerRegistry from './reducerRegistry';
const initialState = /* from local storage or server */
// Preserve initial state for not-yet-loaded reducers
const combine = (reducers) => {
const reducerNames = Object.keys(reducers);
Object.keys(initialState).forEach(item => {
if (reducerNames.indexOf(item) === -1) {
reducers[item] = (state = null) => state;
}
});
return combineReducers(reducers);
};
const reducer = combine(reducerRegistry.getReducers());
const store = createStore(reducer, initialState);
// Replace the store's reducer whenever a new reducer is registered.
reducerRegistry.setChangeListener(reducers => {
store.replaceReducer(combine(reducers));
});
export default store;
Managing the Redux store’s reducer with a registry should help you better code-split your application and modularize your state management.
Terraform [electronic resource] : up and running : writing infrastructure as code / Yevgeniy Brikman
JAMA Internal Medicine : Temporal Trends in Unstable Angina Diagnosis Codes for Outpatient Percutaneous Coronary Interventions
Interview with Robert W. Yeh, MD, MSc, MBA, author of Temporal Trends in Unstable Angina Diagnosis Codes for Outpatient Percutaneous Coronary Interventions, and David L. Brown, MD, FACC, author of Gaming, Upcoding, Fraud, and the Stubborn Persistence of Unstable Angina
Working With MDX Custom Elements and Shortcodes
MDX is a killer feature for things like blogs, slide decks and component documentation. It allows you to write Markdown without worrying about HTML elements, their formatting and placement while sprinkling in the magic of custom React components when necessary.
Let’s harness that magic and look at how we can customize MDX by replacing Markdown elements with our own MDX components. In the process, we’ll introduce the concept of “shortcodes” when using those components.
As a heads up, the code … Read article “Working With MDX Custom Elements and Shortcodes”
The post Working With MDX Custom Elements and Shortcodes appeared first on CSS-Tricks.
The code of capital: how the law creates wealth and inequality / Katharina Pistor
Deciphering the rising sun : Navy and Marine Corps codebreakers, translators, and interpreters in the Pacific war / Roger Dingman
Preservation News: 5/16 Lecture on Cartography and Code
Join us for the next Topics in Preservation Series lecture:
Cartography and Code: Incorporating Automation in the Comparison of Medieval Toponyms Across Maps
Wednesday, May 16, 2018
1:30 pm EDT
Library of Congress James Madison Memorial Building
Pickford Theater (third floor)
Register for the live webcast by Tuesday, May 15 at 5:00 pm.
Click here for more information and to register for the live webcast.