Sign in with Twitter

Username:

Focusing on quality. Software Development. Product Management.

690 Following   3,313 Followers   4,477 Tweets

Joined Twitter 6/28/09


@cullophid @dan_abramov @reactjs Ok, giving it another try: https://t.co/LyA1r25J91Most "React" libraries are solving things that have nothing to do with React, coupling logic to UI components. Also… https://t.co/3GCHXkTWbsI have been publishing a 13 part series called "Notes on TypeScript" over the last couple of weeks. Documented all… https://t.co/RZQn4tQLGK @dan_abramov @reactjs The paradigm behind React is the real power, These ideas extend far beyond the UI. Also, kee… https://t.co/cLI2kSDdJVThere are 2 videos from the Prof. Frisby series that explain and use Tasks. https://t.co/UeW03Kse8J In this video… https://t.co/U5umEpdoTd @ThomasKempel Yes, I think it's a mixture of people not knowing about them and not enough information on the topic.… https://t.co/z57uZoaEuwIt's interesting to see that Tasks have not gained more ground in mainstream JavaScript, but might fit perfectly in… https://t.co/XxZGTtD8W9"No amount of indentation or sorting imports alphabetically can fix a broken design. So instead of focusing on how… https://t.co/4abAcCb5ndNext mob-programming session coming up on Thursday, March 28. Topic: inter-op with Javascript for the most *unreaso… https://t.co/zT6SGrGfDR
Retweeted by A. Sharif
3/23
2019
@michlbrmly You can use Pick<U, Extract<keyof U, T>> to always return the valid properties. would result in: cons… https://t.co/VUHpcePHbJ @michlbrmly This doesn't seem right. The following is possible: const { friends } = pickFriends("hello"); const a:… https://t.co/Vlh405fUY4 @southpolesteve You could delay the function call, by ensuring that an actual object is defined as needed. Could be… https://t.co/6056JaCEPi
3/21
2019
@marcelcutts @ISharify @dan_abramov There are still enough topics they can cover, f.e.: unit tests, use types/remov… https://t.co/otUg3DwSwm @kentcdodds Thanks! Also, a lot of what you have been saying/writing has been helpful and a guidance in thinking ab… https://t.co/gh1Dvc8ZxCThe best component tests are the ones where you make a design flaw obvious, refactor the component and then remove… https://t.co/EU7rk4Z5Dh @ISharify @dan_abramov This was some next level stuff. Explaining the advantage of hooks by talking about design pr… https://t.co/hP1BpP0Imp @FokusMan @chriscoyier I don't think of it as a divide. Different types of developers working on different parts of… https://t.co/dt6DPdMr7YIf you are interested in JavaScript, TypeScript, and algebraic data types, you should really be following… https://t.co/WMFC7UwN2J
Retweeted by A. Sharif
3/19
2019
Some "Frontend developers" have more in common with "backend developers" than with other "Frontend developers". Wha… https://t.co/eJWgZ4JED0Do we care about the user interface? As the user interface can be an API consumed by other developers but also a co… https://t.co/ODrTRqywWcI think the Frontend/Backend developer distinction is arbitrary and counterproductive. More interesting is asking w… https://t.co/69iQq9XHQ9Higher order function type inference coming to TypeScript soon... Thanks @NaveenS16 for the info. https://t.co/r7lTWMPCV4 @markdalgleish Some developer: We want to focus on integration tests. Some management consultant: Cool, but write u… https://t.co/RwGteHfcl9I wrote up something quick about the thinking and motivation behind Styled System https://t.co/E8RacGsiFB
Retweeted by A. Sharif @kentcdodds @TensorNo Great documentation. Also, @nikgraf set it up on a production application last week. We've be… https://t.co/Ch1FYM7tM7If you haven't seen Styled System before, do yourself a favour and check it out. It's been a huge influence in my t… https://t.co/K7FhU9nSx5
Retweeted by A. Sharif @markdalgleish Yes, styled-system is impressive. After being amazed by Tachyons it was @mrmrs_ that pointed me to s… https://t.co/PAZFRBfAby
3/18
2019
📝 New on Overreacted: Writing Resilient Components In my experience, these are four principles that matter the mos… https://t.co/dEOY97azb7
Retweeted by A. SharifThe REPL is like unit tests that don’t stay and I like unit tests that don’t stay because I don’t need them once my… https://t.co/s5XBLUhC3E
Retweeted by A. SharifWhat I like about ReasonReact is that there is a clear way of building components. This also what I liked about Elm… https://t.co/1PPVhLHKBWBonus: A "Angular Expert/Consultant" once claimed that no one is using React in the "Enterprise world". @__tosh @sharifsbeat type systems really get in your way when you can't 100% rely on the type information. The bike… https://t.co/uFmQIVkzEh
Retweeted by A. SharifClaiming to be building "Enterprise Software" is no excuse for building software with unusable UIs, subpar UX, a hi… https://t.co/UjCvdjkptz @sharifsbeat also: when you consider how little type systems contribute to robustness/anti-fragility of software sy… https://t.co/QbmO1qiyr4
Retweeted by A. Sharif @james_k_nelson @ferdaber Yes, I think that's a great observation. There is also a difference between we have exper… https://t.co/FDCGDhRKCY @oleg008 @sharifsbeat While I’m a big fan of types I believe this leaves out the most important factor: the team I… https://t.co/PqRvpV42wW
Retweeted by A. Sharif @satya164 @oleg008 Thanks @oleg008 and @satya164 for adding a different perspective, definitely something to think about. @oleg008 Yes, adding types later can be a struggle. What I was trying to imply is that one could delay adding types… https://t.co/KK5SUm8k8E @__tosh Very true! @ferdaber Also definitely true. Similar to tests. Some people write tests when prototyping and then refactor tests… https://t.co/BXCKoyyUuG @ehabdevel It can definitely help to streamline, it can also be used used as additional documentation and be helpfu… https://t.co/xhYdjdmMgWIf you're not sure if you actually need types in your JS application, the following advice might be helpful: * Del… https://t.co/rrgIZFUcRo @dan_abramov @ovidiubute @DefinitelyTyped That's a very good point. Will update the blog post to include shout outs… https://t.co/y0NqyJZUCm @ahmed_am55 Yes, this blog post is excellent. It explains frameworks/libraries and their eco-systems as well as the… https://t.co/Gsv1QlpwBwWith TypeScript/Flow becoming more popular in JavaScript, it might also be interesting to see if property-based tes… https://t.co/q3jY7ME7I3
3/17
2019
If your company looking for someone who knows react and nodejs, tell me please
Retweeted by A. Sharif"When using a framework, a certain class of problems are made easy to solve. Programming feels intuitive if we stay… https://t.co/XsfGCmrs90"With vanilla React I can code at the speed of thought" @thinkfunctional Had a great discussion with… https://t.co/irAJeJ9HcDJust published "Notes on TypeScript: React Hooks" A thorough guide to everything you need to know about React Hook… https://t.co/cwOd4Epc6T
3/16
2019
Best slide from @ScottWlaschin's Functional Design Patterns 🧙‍♂️ https://t.co/Ifd2mA6hJJ https://t.co/Um06GNf1S7
Retweeted by A. Sharif @okonetchnikov Agreed. Also, these linters, types, UI tests won't compensate for a missing a architecture, for a co… https://t.co/9hU7cmo6Ds
3/15
2019
We have all heard about "fail fast, fail early and fail often". But there's something important missing here. Faili… https://t.co/8mGnv78Evl
3/14
2019
"Yes, you should write code such that it produces software that provides value here and now, but you should also do… https://t.co/0K9cHzB1jj @ahmed_am55 Excellent!
3/13
2019
@jannik2b @lenaggar Sometimes we have a plan to solve a problem, but neglect what we might not know about the probl… https://t.co/cO1nb3mtVJThe thing you're trying to build should be more exciting than the tools used to build it.
Retweeted by A. SharifCounterintuitive programming advice: * Pen and Paper might be the most impactful tools we have at hand * Taking a… https://t.co/cc8Kk172HRPublished these two TypeScript related post over the weekend. Notes on TypeScript: Type Level Programming Part 2… https://t.co/W6LEpXoKhy
3/12
2019
@sgrove Thanks for sharing. This approach can definitely be effective in product development. The writing for your… https://t.co/nomfgSTb7uThat blog post doesn't even have to be public. 1. Write for yourself. 2. Publish an internal post. 3. Make the pos… https://t.co/h1d6GbLEm4 @ahmed_am55 Thank you very much for the very kind words!One good way for evaluating a possible technical solution is to study the topic/library/tool beforehand, maybe even… https://t.co/viNJRr6F0G
3/11
2019
Been writing about TypeScript and partly TS/React over the last couple of weeks. About to wrap up the "Notes on Typ… https://t.co/QohZywfc9lJust published "Notes on TypeScript: Inferring React PropTypes" This post is all about how we can leverage existin… https://t.co/mLyhP6Qc6u
3/10
2019
You can use PropTypes.InferProps to infer the types of existing React component PropTypes definitions. Check the ex… https://t.co/cPvZrlDoOtI think that @Cypress_io is a huge step forward. End 2 End tests is one of the more complicated topics. Complicated… https://t.co/IUjJFjdR7PPublished the final post on type level programming in TypeScript. You can read the full series of posts here:… https://t.co/u3xmeZIplF
3/9
2019
@Corlaez Sure, I can write an example, that displays in more clarity why this approach might be useful. It's comple… https://t.co/ZerQjlBzM4
3/8
2019
@dennizor "When developers form a great team, the team makes us into great developers." The above quote is from a… https://t.co/4K2MxVJd2VSo many interesting insights in this thread about TypeScript. Learned a couple of very interesting things about TS/… https://t.co/73lkxbTGfY @dennizor This is excellent! Also, this is not a one way street. Helping others always has a huge learning effect f… https://t.co/i46GwHxBei @fvilante @sgrove @IslamAttrash @javierwchavarri @rtfeldman @reasonml But isn't the identity function the best exam… https://t.co/ypmMPaS6zRBeen writing some tests against a React component. Moving everything into a reducer function helped to easily test… https://t.co/UxBYtfAFlY @sgrove @fvilante @rtfeldman @IslamAttrash @javierwchavarri @reasonml In this case it would mean that "Hello" * "He… https://t.co/Z5AHrdcvT7 @sgrove @fvilante @rtfeldman @IslamAttrash @javierwchavarri @reasonml Yes, and in TypeScript we can now guarantee t… https://t.co/1zNIHgxHfb @fvilante @rtfeldman @sgrove @IslamAttrash @javierwchavarri @reasonml The identity function in ReasonML works as ex… https://t.co/OEgV64dui5🚀 Let’s make our apps more responsive with Concurrent React and the Scheduler. Here’s the why and how: 📝… https://t.co/IZQi8GHLMh
Retweeted by A. Sharif @fvilante @sgrove @IslamAttrash @javierwchavarri @rtfeldman @reasonml Great discussion and insights. But I would no… https://t.co/ajIpYH34UJ
3/7
2019
@IslamAttrash Yes, this works out of the box with ReasonML or Flow for example. https://t.co/VD2uJZ9h12 There is… https://t.co/1ickZXDNaJJust read a blog post claiming that React is too flexible on the one hand, but will also lock in developers on the… https://t.co/vwC4khw2J1 @swyx Th equivalent to blog posts that claim there will be a follow-up post, but the follow-up post was never published.Enable the least experienced member to do code reviews. These code reviews can be very precise and have the potenti… https://t.co/T3VAli9cEc
3/6
2019
Counterintuitive advice when writing software: * Keep it simple - it will become complex anyway. * A clear idea of… https://t.co/cG8WqBh5UCI really really ❤️ it when a Pull Request touching business logic has unit tests and you clearly can see the intend… https://t.co/FyOakFaMhz
Retweeted by A. SharifIf you're a fan of TypeScript, @sharifsbeat has been putting out some great articles. Here's the first in the serie… https://t.co/Z1rv90y8l5
Retweeted by A. Sharif
3/5
2019
Actually I don't know what influenced React. But it would be very interesting to find out, what actually influenced it.So many interesting ideas/concepts to learn when studying other languages. Some of the most impactful frontend tool… https://t.co/J5Ygqw1FH8The difference between ReasonML, Flow and TypeScript in a nutshell. * ** * There is more to know, but interesting… https://t.co/X7k8SQbftZWrapping up the TypeScript topic. Published two things this weekend for helping with getting started. A thorough w… https://t.co/QMBHp7DYbP
3/4
2019
@geirmanc You could try to define the prop type. type Props = { children: (a: string) => JSX.Element; }; And th… https://t.co/lLMS8DBJDQPublished "Notes on TypeScript: Fundamentals For Getting Started". This is one of the last "Notes on TypeScript" a… https://t.co/u31w1CVsK1📝 New on Overreacted: How Are Function Components Different from Classes? It might be not what you think.… https://t.co/yEDlwFV71R
Retweeted by A. SharifJust published "TypeScript Fundamentals For JavaScript Developers". Learn the absolute TypeScript fundamentals. Go… https://t.co/RZwOuscDDM
3/3
2019
@FacundoGFlores They are mostly too low level, also very hard for non technical people to understand. They mostly f… https://t.co/yxg9IegLdN😓 Released `flopflip/*@8.0.0`. Only took me 6-8 weekends with +4800-7500 LoC 👩‍💻. It's a complete rewrite to TypeSc… https://t.co/ms8Ps66Un8
Retweeted by A. SharifJust published "Notes on TypeScript: React and Generics". Might be interesting if you want to learn more about Rea… https://t.co/fdqTlsXuFrMore examples of let vs. const... https://t.co/uY4ujTz7zJ https://t.co/sZQc1qqELmlet vs. const - interesting behaviour when dealing with type argument inference in TypeScript. There is a differenc… https://t.co/LduRzaIZCq* Write more documentation not less. Nothing is obvious. * Write tests for black box part of the application. * Sma… https://t.co/WtvuM2JkEJ* Clear separation of product and technical decisions. Technical decisions are the result of product decisions. * S… https://t.co/JeYCxPVdYf
3/2
2019

0