Sign in with Twitter

Username:

Eran Hammer @eranhammer Los Gatos, CA

Creator of @hapijs. A non-practicing nihilist. I don't read responses and won't reply to you on Twitter. Can be reached at eran@hammer.io. https://t.co/zt5faanYxP

4 Following   7,778 Followers   6,753 Tweets

Joined Twitter 7/31/11


When you write tests, what do you prioritize first?
11/14
2019
@typescript @hapijs If your company is interested in a one-time sponsorship to add full official @typescript suppor… https://t.co/QcH3uXRGxF @typescript @hapijs I am not expecting this to become the norm. There aren't many clear goals like this, that are b… https://t.co/e8VUroqY3F @typescript @hapijs I expect this to cost around $30K in lost consulting revenues. I am going to do it either way,… https://t.co/f71usFMqTE @typescript @hapijs I can't outsource it to other people because good type definitions require architectural decisi… https://t.co/vGopy8NgmE @typescript Adding @typescript support is probably the top request I am getting by far. It comes mostly from large… https://t.co/bKFpm0tDi0My current commercial license + support + sponsorship model works well for funding regular maintenance and support.… https://t.co/lwyYOsGEmE
11/13
2019
Or pay.The only open source advice you're ever going to need: There are people with answers & power to help you. You want… https://t.co/Fc5Z71xnkP
11/12
2019
The Open Source Battlefield https://t.co/nvQgy9HqoW
11/8
2019
I’m at @CascadiaJS today. Come say hi and grab some @hapijs stickers.
11/7
2019
Going through my accounting logs to see how much money I've received in open source sponsorships to date for my… https://t.co/apnsrjgGyW
11/3
2019
Any good platforms for creating coding tutorials?
11/2
2019
What's your prefered way of learning online?How did I not know about non-greedy RegEx quantifiers?! Given "<a><b>", /<.*>/ will match "<a><b>", while /<.*?>/… https://t.co/RbhH5Nq3rJ @hapijs I expect joi questions to be the main area where issues are closed after two weeks, mostly from people usin… https://t.co/qlTT6VvUD4Experience has shown that if a question is not answered after two weeks, it is unlikely to be answered at all. Whi… https://t.co/GmOeoQj1IdStarting this week, I will be closing support issues that have not been resolved by community resources after two w… https://t.co/IJuMdKV1lk
10/30
2019
Maintainers that publish @npmjs modules without 2FA are just lazy. Users using modules published without 2FA are ir… https://t.co/7gLpxpqMwn
10/29
2019
If you would like to support my open source work, but a commercial support plan is not for you, I've added a… https://t.co/iaGyge6eM7
10/21
2019
I am thinking of starting a Backend Engineering Academy of sorts. I’m constantly amazed at the resources available… https://t.co/PNNEe6ZjL5Issues and pull requests left open for a long time are the broken window theory of open source.
10/18
2019
Well, this theory that I have, that is to say, which is mine, which belongs to me is as follows: Open source is 85… https://t.co/HG7TCnaX9NStickers. https://t.co/LNdCdvfjOp
10/17
2019
You should love your framework. If you do, it's the right framework. If you don't, keep looking.
10/15
2019
I'll be at @CascadiaJS next month to discuss Fair Trade Open Source... The subtext of the talk will be "how to get… https://t.co/HyWA5CYv6nOne last time - Please fill this survey. I am finalizing my roadmap for the next 6 months and this will be a huge… https://t.co/1DTZFD07rJ
10/14
2019
Technically, if you copy text from my module documentation and put it in an external @typescript file without also… https://t.co/89vXgFcgp1
10/12
2019
Instead of checking 70 README files with a dozen annoying badges, we've put all the information in one simple place… https://t.co/vI2Klh5kH0If you use @hapijs, please fill this quick 5 questions survey. It will take you less than a minute and it is extrem… https://t.co/s6UJ7pJFgW
10/11
2019
I've put in a lot of work to make the @hapijs policies reflect reality and set clear expectations. No lofty goals,… https://t.co/RujxFKh75V
10/10
2019
The @hapijs Slack channel has 1023 members! Most questions get an answer within an hour. Most importantly - everyo… https://t.co/bG9ZA8bkeo @hapijs But the most meaningful change is a new issue template called: "Ask a question, any question! Need support… https://t.co/1yvDQpi5nb @hapijs Paid support provides meaningful guarantees: - 3 days to get a response to any question, (with faster opti… https://t.co/pg0kd5BuHL @hapijs To set realistic expectations, it states clearly that: "You do not need to pay to receive support. Free co… https://t.co/Hfr5m0FCQx @hapijs It also adds a few questions that help prioritize the issue, even when it is not covered by a commercial su… https://t.co/ICfSVw8Vs7The new @hapijs issue templates contain a new section asking about paid vs free support plans and lists the options… https://t.co/ZO03b3Dn0y
10/9
2019
@github A positive only feedback approach similar to eBay's buyer reviews would also work. Cannot punish people but… https://t.co/vOvWdiJ7dyI want @github to let maintainers star rate people opening issues. Average results will appear on user profiles, (d… https://t.co/5oRduDj7aW
10/8
2019
I don't have any single project with the massive audience of @vuejs so I never needed to work on a new major releas… https://t.co/vFXHydlWDSCaring = Doing something about it If you are not actively doing something to ensure the security of your entire co… https://t.co/Q7mQvBWHfKMost people don't really care about identity theft. Most companies don't really care about open source security. T… https://t.co/qqEs9E9eu0
10/7
2019
This is why advice for new maintainers is very different from advice for maintainers with successful packages. The… https://t.co/QiyZT5FobFOnce critical mass is reached, the tables are turned. The adopters are now at the mercy of the maintainer. Their in… https://t.co/NPk9MdKka9Open source packages cannot survive without reaching critical mass. It is the only way to ensure quality, security,… https://t.co/Ky1hv103O7There are two sets of rules of maintaining open source packages. One before a package hits critical mass usage and… https://t.co/u6ZuOg99zl
10/6
2019
Don't start a new @nodejs project with Express. There are so many other better alternatives. Pick pretty much anyt… https://t.co/am7q7jtUzd
10/4
2019
There is no such thing as an unopinionated framework.I think it's time to give some talks again.
9/28
2019
All algorithms are now called AI.My Repo, My House, My Rules. I’ve recently realized people misguidedly think GitHub repositories are public space.… https://t.co/Vm9xEKKxoX
9/27
2019
@hapijs If your company is using a @hapijs module (hapi, joi, ...), please ask them to get a support plan. These pl… https://t.co/ilHOidKAQrDid you know you can get support for your @hapijs applications? Plans come in 3 flavors and start as low as $95/mon… https://t.co/ZeStP7mutE
9/24
2019
@hapijs Updated status: 12 Open issues: 5 - documentation 7 - feature requests 0 - bugs 0 - pull requests https://t.co/wNjfVK1B2l
9/23
2019
There is something very wrong with @typescript external definition setup when adding types support in my own module… https://t.co/FB76DUNOZbThe entire @hapijs ecosystem of 70 modules currently has 18 open issues (no open pull requests). This includes ever… https://t.co/z9W31Iubpg
9/22
2019
In the world of nested dependencies, README badges are largely false positives. It is pretty meaningless that THIS… https://t.co/4OCEkV6eUE
9/20
2019
I'm conflicted about the Help Wanted, and Good First Issue labels. I want to discourage unsustainable contributions… https://t.co/qrkTlRGxV1hapi v20 is going to be big... (if it works)
9/19
2019
Maintaining open source is the canonical love-hate relationship.
9/18
2019
Security Advisory Impacts all versions of hapi. For v17 and v18, a patch has been published for the @hapi/subtext… https://t.co/jRiypKeY52
Retweeted by Eran Hammer
9/17
2019
Current status quo expects open source maintainers to "do the right thing" and just keep maintaining every version… https://t.co/YuEB4df4YZA secure web requires forcing people from doing stupid things when we clearly know what those things are. I wish I… https://t.co/Y8WXYPIRVoThe only practical solution is to actively block downloads of deprecated modules after x days or after a high sever… https://t.co/M7tnZI7F28Deprecation messages are not annoying enough to trigger action. Most people just get used to them, and they go away… https://t.co/X6yckySzaYOther side of having no communication channel to package users: 800K+ monthly downloads of deprecated hapi version… https://t.co/u7sjUHZcb4I have never read (even a mildly) decent article about choosing a @nodejs framework. I have never read any competen… https://t.co/z6fmdXM3NE
9/16
2019
Something seems very wrong with @nodejs v12.10.0... Running the @fastifyjs benchmarks (100 connections, 10 pipelin… https://t.co/BRlzlvMZ8O
9/15
2019
Treat your patch and minor releases with the care you give major releases. Treat your major releases with the laid… https://t.co/BFvLwciculJSON Schema was a mistake. It makes as much sense as XSLT (which is probably the worst thing one can say about a f… https://t.co/I7OI28oAhy
9/13
2019
Welcome to @hapijs' joi v16 - the most powerful data schema language and validation for JavaScript. 4+ months of w… https://t.co/PM6ks0FUwD
9/11
2019
The Empty String is not a valid string. No one is ever going to change my mind on this. It might annoy you for 5 m… https://t.co/KNzZYfihlw
9/2
2019
Companies want stability. Developers want innovation. Companies prefer open source that's finished. Just fixes for… https://t.co/MD62mJqRfbThe only way I have found so far to communicate with my anonymous user base responsible for millions of monthly dow… https://t.co/imfgYTbYeuBrilliant discussion of open source funding from @feross https://t.co/xUacheuHeo My biggest challenge has always… https://t.co/HBrL1XIgEH
8/30
2019
The joi v16 release notes are currently at 26 pages... https://t.co/mOZMiJSPaE (I might have over done it just a tiny bit)
8/28
2019
The new joi tracer for coverage was @eDominykas's idea. I wanted to add debugging but didn't find the right "hook".… https://t.co/32S6t7Ms9ZIf you are using chained when() statements in joi, you are probably going to find some bugs in your validation rule… https://t.co/2I74zessVy
8/27
2019
lab v20.2 + joi v16 = new kind of awesome. const Joi = require('@hapi/joi'); const schema = Joi.string().min(10).a… https://t.co/HByN238cjA
8/25
2019
It can all be summed up with a simple questions: "If major bug or security issue is found in this module and the m… https://t.co/WfSP0ZG1mEThe ideal third-party dependency is a module that is both easy to understand and self-support (if needed). This is… https://t.co/RrXjsyy0lgCompanies spend time thinking, planning, and managing node versions because they need to be running a supported pla… https://t.co/LaENDPRzuJIf a maintainer is not giving clear guidelines as to their support intentions, the module is a high risk dependency… https://t.co/hnJRvgmVlBThis should be stupidly obvious, and yet... When using a module written by someone else, always: - take a look at… https://t.co/NLHbalLeMR
8/23
2019
- "Suckers never die, they just rotate." On Guilt-Free Open Source: https://t.co/PiZH6zXH8m
8/16
2019
There are two kinds of pull requests. Those you can merge in a few minutes and those you rather just write the fucking thing yourself.
8/15
2019
The problem with: "I've decided to work on open source full time, please support my work" is that it really means… https://t.co/dOb37AW9ZU @github: Best one so far... @hapijs/marker is used by exactly ONE other package. You are showing 99,010. Maybe remo… https://t.co/H9hGIPbNTy
8/14
2019
Told you I wasn't fucking around...Which new joi v16 feature are you most excited about? - Expressions and templates - Advance references - Multi-lan… https://t.co/q7ihrxSsjVPresenting the joi v16 Release Notes: https://t.co/mOZMiKaq2c @hapi/joi@16.0.0-preview now available! With v16, j… https://t.co/XBJxj58YAE
8/12
2019
Pro tip: say thank you when an issue you opened is resolved (even when not to your satisfaction).
8/10
2019
Mystery solved. https://t.co/4PD1BUx49K https://t.co/tImc7L3Nw2
8/9
2019
I have to admit, I enjoyed crafting this joi v16 error message far more than I should have... 'object.assert': '"{… https://t.co/6IPlazu3Ay
8/8
2019
joi v16 will come with official browser support. Uncompressed bundle size has been reduced to 161K from around 500K… https://t.co/A08f3Lpg5B
8/7
2019
If you are going to ignore and remove the issue template, I'm going to ignore and remove your issue. Seems like a… https://t.co/MFK5Lz0Rec
8/6
2019
Almost there... (joi v16 performance vs current) https://t.co/XZAZPYYBUO
8/3
2019
Fact: Express is not going to make you hapi.
8/2
2019
Thinking of using @hapijs? The new https://t.co/xlfe9lopZ2 developer site includes everything you need to know (and sell to your managers)!The root cause for most of the ills of open source is that people measure value in terms of the support they get in… https://t.co/Mok5ThLaui
7/30
2019

0