Sign in with Twitter

Username:

Eric Elliott @_ericelliott San Francisco, CA

Make some magic. https://t.co/u7GMqCSBmo https://t.co/pWY8AvqCZ4. Beware of fake crypto-scam bots. No DMs. Have an opportunity for me? Contact my agent, @JS_Cheerleader

13,035 Following   56,730 Followers   39,251 Tweets

Joined Twitter 3/14/08


Code reviews are best for bug prevention, not bug catching. The magic comes from the knowledge sharing.Check out the "Functors and Categories" blog post that became a chapter in the "Composing Software" book:… https://t.co/xDGgnTdZ5EI removed dozens of features from an already simple test framework. Result: Testing zen. https://t.co/YCX7RIrKwE #JavaScript #TDDFunctional Programming is used extensively in every modern JavaScript application I've seen. Do you know what it is… https://t.co/HULkxtUpzsThis is the #1 question people flunk on in JS interviews that leads to rejection or less pay: https://t.co/4XR9mWrjme #JavaScriptThanks for the mention @JS_Cheerleader @_ericelliott! 💜 Something very special and exciting is in the works - mains… https://t.co/EzsGWovkzI
Retweeted by Eric Elliott
12/7
2019
me: do you want it done quickly or do you want it done right? manager: yes
Retweeted by Eric ElliottAfter a decade investment and infrastructure building, the first batch of mainstream crypto-powered apps could expl… https://t.co/sGfE6esklk
Retweeted by Eric ElliottSpying on @_ericelliott teaching a https://t.co/yuH5pduIgP mentee. #javascript https://t.co/crCwFXOQrB
Retweeted by Eric ElliottWhat is @_ericelliott up to? You're about to find out. https://t.co/uHFRFb7Z5k
Retweeted by Eric ElliottRedux tips: * Use action creators & selectors to decouple action logic from dispatch callers * Always use TDD https://t.co/WNpJz6pdOMAll software design is composition: the act of breaking complex problems down into smaller problems and composing t… https://t.co/HS97yDFmlVLenses can simplify complex reducers and help keep them pure. https://t.co/wgTn2JXXUB #JavaScript #FunctionalProgrammingHighest rated qualities of software developers: 1. Problem solving 2. Skills 3. Mentorship/Teaching 4. Learning https://t.co/DP9o2pNl0dDevelopers and tech leaders should read this book to better understand how our minds trick us. Developers are prone… https://t.co/PgbrerAoxJDebugging tip: See a mysterious error in your dev console? Try rebuilding and restarting your app. Refresh the browser and try again. @Brewnode Outside of machine code and assembly languages, a noop can be optimized away. If you want a chip NOP, you… https://t.co/IZOFnr6sEm
12/6
2019
Last call for the #Ethereum Istanbul fork. In approximately 4 days mainnet is updating. Please make sure your nodes… https://t.co/SmSdCKBzbH
Retweeted by Eric ElliottLearning TDD with unit tests doesn't happen overnight. You aren't just learning how to test. You're learning proper… https://t.co/vqGMXBZCoy"Brave went from 8.7 million monthly active users in October to 10.4 million MAU at the end of November, a 19% incr… https://t.co/SQUWWyB34e
Retweeted by Eric ElliottThere are serious security problems with traditional username/password authentication for apps. Handling password a… https://t.co/UqmIpelj73Continuous delivery is the first step on the road to High Velocity Development https://t.co/8HVKYGbHLS #JavaScriptWhat's all the hype about immutability and functional programming? https://t.co/hSgR9axvZw #JavaScriptSenior mentors play an indispensable role on development teams. https://t.co/MsGdZdxPoyReact hooks have replaced my use of React classes and render props, but I'm still using HOCs to compose behaviors s… https://t.co/s9w8UXo27dImproving User Authentication and Security https://t.co/oFG5Ilxeua @_ericelliott @JS_Cheerleader
Retweeted by Eric ElliottA change to your app's theme should not require changes to every page in the app. Instead of hard-coding colors in… https://t.co/TYS63KaYVQ
Retweeted by Eric Elliott @bsgreenb @meijer_s No. Organizing by type is when you say, "CSS goes in /styles, HTML goes in /templates, controll… https://t.co/TBfXwf2UvxCongrats! 🎉 https://t.co/wUF5666u03
Retweeted by Eric ElliottNoop: no-op. A function which does nothing and returns nothing interesting. @bsgreenb @meijer_s I do.
12/5
2019
A dead giveaway that a function is impure is if it makes sense to call it without using its return value. For pure functions, that's a noop.How code review, automated testing, pairing, knowledge sharing, and CI helped improve software quality for Ableton… https://t.co/BqwSz9fzMg
Retweeted by Eric ElliottA function that returns a promise is probably not pure. Async implies side-effects, and promises are eager. https://t.co/ELvBrNbUwi @dre4success @carlmultimedia Because people suck at conducting interviews.Spying on @_ericelliott tackling a tough problem with a https://t.co/yuH5pduIgP student. A 🐶outside broke into a he… https://t.co/M1UxFcYHtv
Retweeted by Eric Elliott3) It will be a matter of time before many of these innovative tech will make their way back into the traditional W… https://t.co/phGHBkf7o9
Retweeted by Eric Elliott2) @fortmatic as well as many exciting wallet projects in the #Ethereum dApp ecosystem are on the cutting-edge, lev… https://t.co/D5l5eduxY0
Retweeted by Eric Elliott1) Key-based authentication becoming mainstream is inevitable. Key pairs are asymmetric and “random” (hard to crack… https://t.co/y4SmAfIAHw
Retweeted by Eric Elliott @vre2h https://t.co/tOgJP9yzmF @iquardt @dprophecyguy @drboolean https://t.co/izwKCWoGgY @carlmultimedia Or reverse a linked list. Or invert a binary tree. @carlmultimedia Yes, but also NO. The way most people teach and study algorithms and data structures really has not… https://t.co/z3wqNp0MlBJS developer study guide: * JS syntax, keywords, operators * Built-in APIs (esp. Array map, filter, reduce) * Rest/… https://t.co/ODmCgE7rG4Encapsulation is the motivation and core feature of object oriented programming. It's used to protect React compone… https://t.co/kZN0zxewvaDon't let the title fool you. "What is a Promise?" Is a deep dive that will help even experienced promise users. https://t.co/ET28ZkPSTnKey-based authentication is the future! 🔑 Apps should be built like dApps. Many thanks to @_ericelliotthttps://t.co/Om96dtynQl
Retweeted by Eric Elliott @GenuineRex There's an even better future in store than the mTLS you might know. Coming soon to an app near you... https://t.co/IgmvVwlz71 @WBratches Here's a hint: https://t.co/IgmvVwlz71 @jlaracena Here's a hint: https://t.co/IgmvVwlz71What is @_ericelliott up to? You're about to find out. #javascript https://t.co/lXOJLE06gp
Retweeted by Eric ElliottPassword-only is obsolete! Improving User Authentication and Security by @ericelliott https://t.co/TKcvowDYvO #JavaScript @fortmatic
Retweeted by Eric ElliottFiles you edit together should live together. Don't organize files by type, organize by feature.
12/4
2019
As you make your app more testable, it should also make the app simpler and more maintainable. https://t.co/BjQCaKVjQKCrypto technology is finally allowing us to abandon the long-broken username/password authentication model. In the… https://t.co/6K3esw7QN1ES6 Arrow funcs can't bind `this`: const double = () => this.x * 2; const numDouble = double.bind({ x: 5 }); numDouble(); // NaN #js @JFThatsABug @TalJoffe Encapsulation from OOP can also help avoid coupling code to implementation details, and obje… https://t.co/nSdaUw16Pw @JFThatsABug @TalJoffe No. Functional programming affords declarative, flexible flow control, while procedural code… https://t.co/DeiNW2K6ixDon't abstract too early. Wait until you've copied and pasted a couple times. You need example use-cases to create good abstractions.A monad lets you compose functions which need to do more than simply return a value, e.g., process a network reques… https://t.co/4cHSXe04zrTo solve a problem well, start with a good enough understanding of the requirements to write good unit tests. https://t.co/dfDitRczNm #tddIf I inherit a big component and it mixes side effects, business rules, and presentation, I'll sometimes scrap it a… https://t.co/xouyJvwfSJEasy way to deliver tremendous value to your org: Small page load time improvements can have big bottom-line impact. #JavaScript
12/3
2019
): Major.Minor.Patch :) Breaking.Feature.Fix https://t.co/jDFNzOZZDu #JavaScriptMentorship multiplies the value of your knowledge: If you can't teach it, knowing it is a lot less valuable. https://t.co/GAUpgr52B2"For each desired change, make the change easy (warning: this may be hard), then make the easy change." ~ Kent Beck @JFThatsABug @TalJoffe Both OOP (encapsulation + message passing) and functional programming (pure functions) avoid… https://t.co/WzeyZ0V7uT @JFThatsABug @TalJoffe Procedural is fine for little shell scripts, but with applications, you get concurrency. Non… https://t.co/Ydk2JIxopDSpying on @_ericelliott mentoring a https://t.co/yuH5pdMjFp student. Yay! #javascript https://t.co/Vp6E2uJbF9
Retweeted by Eric ElliottIt is Quake 3’s 20th Anniversary today. I still have one of the trade show launch props in my garage. https://t.co/YGDnAwkmtF
Retweeted by Eric Elliott
12/2
2019
Legacy testing: Need to fix a bug? Start with tests. New feature? Test. Refactor? More tests. Suites grow one test at a time. #tdd #code
12/1
2019
What is category theory and what does it have to do with functional programming? https://t.co/4zDWAEcQ8HMy favorite modern JS features: * Arrow functions * Array/object destructuring * Rest/Spread * Async/await * [Symbol.iterator]Building or joining a development team? Check out this handy guide to software roles and titles: https://t.co/RFP708THiSThis is book is your shortcut to building apps better. I wish it was available when I was learning how to build com… https://t.co/G8nPsRieAq
11/30
2019
Deep experience with one language beats superficial experience with 5 languages.Continuous discovery requires efficient feedback loops between visionary, product, customers, support, and engineering.Continuous discovery -> continuous integration -> continuous delivery. You want them all.Node 6+ has a great debugger built-in: node --inspect-brk source/debug.js Then open chrome://inspect/#devicesAspiring JS application developers should learn: * Closures * Functional programming * Function composition * The prototype chainIf a feature is taking longer than it should, the answer is more visibility. Pair a senior engineer. Open a WIP PR.… https://t.co/r7IUbwHbPi
11/29
2019
Surprise! When you pay people fairly, product quality improves. https://t.co/yutyYriEHbMulti-Collateral $DAI has been added to the Compound protocol— you can now supply and borrow the latest version of… https://t.co/qT1slTikCn
Retweeted by Eric ElliottMarketing, biz dev, and sales should never dictate deadlines for engineering. If there is a hard deadline, scope mu… https://t.co/Hid3wzVhxHHappy Thanksgiving! We're thankful for all the people who bought Composing Software to read over the holidays.… https://t.co/8CD5XU4lsi
Retweeted by Eric ElliottTDD reduces fear of the merge button, helps you think about how your code will be used, but my favorite benefit is… https://t.co/jIwh8YCejHRecent improvements to https://t.co/lLAtkmDYTJ: * Watch me use RDD & TDD to build new app features * Watch me add a… https://t.co/GxcbsLsEwoManagers, even if you're a former engineer, your engineering team has the best visibility into the tech side to fin… https://t.co/ejaQeo0NrVUser testing should be a continuous process, not an afterthought.
11/28
2019
Want to learn Functional Programming in JavaScript? This series is the surface cruise and the deep dive: https://t.co/DqiyxWS9B0 @urfagundem If you get that error on https://t.co/lLAtkmmnv9, please report it: https://t.co/sguCOAIQOs If you get… https://t.co/tRH1e2salyUX includes the whole user experience, including discovery, onboarding, using, and sharing.All engineering leaders should have some understanding of how their work impacts KPIs. Share a KPI dashboard with the engineering team.Tech leads should be involved in the product discovery process.IMO, all engineering managers and tech product managers should be programming literate for empathy, but trust engineers to do their job.Fear of change is the enemy of developer productivity. TDD is the enemy of developer fear.
Retweeted by Eric ElliottEngineers should understand business objectives. Knowing why a feature is being built can aid understanding and reduce confusion and bugs.
11/27
2019
@ploeh @StefanHoutzager @YaroslavBigus @davidfowl Different kinds of tests serve different purposes. You definitely… https://t.co/PhWDN7isJ7I like to keep product teams relatively small. I top it out at 7-10 members per team. @vivainio Yes. Sortof. It's something we put in front of users to validate what we're building towards. Is should b… https://t.co/EhXPXDADip
11/26
2019

0