Abdullah Atta

1.5K posts

Abdullah Atta banner
Abdullah Atta

Abdullah Atta

@thecodrr

building @notesnook. maintaining fdir, alfaaz and a bunch of other thankless libraries.

Pakistan Sumali Aralık 2017
393 Sinusundan420 Mga Tagasunod
Naka-pin na Tweet
Abdullah Atta
Abdullah Atta@thecodrr·
After fdir, it's time to build the fastest word counter. Introducing alfaaz! ⚡The fastest 🈸 Multilingual 🧪 100% tested TypeScript code ♾️ 0 dependencies 🪶 Lightweight (< 1KB) github.com/thecodrr/alfaaz
English
1
1
13
3.1K
Abdullah Atta nag-retweet
Ammar Ahmed
Ammar Ahmed@ammarahm_ed·
I am so excited to announce that my @NativeScript android runtime rewrite using Node-API is near completion. 418 tests (almost all) from NativeScript test suite pass now successfully when using @HermesEngine! 😀😀
Ammar Ahmed tweet media
English
3
14
129
6.8K
Abdullah Atta nag-retweet
Notesnook
Notesnook@notesnook·
Apple Notes is not free. You pay for it by spending thousands of dollars on purchasing absurdly priced devices from a company that makes a living off of entrapping their users in vendor-locked services holding their data and memories hostage. That's Apple Notes.
English
9
23
169
18.7K
Supreme Leader Wiggum
Supreme Leader Wiggum@ScriptedAlchemy·
Github takes forever to introduce ai features. Proceeds to introduce the least valuable, most common implementation. How bout issue search or duplicate issue or closing spam or moderately useful notifications. Put a few billion into that instead. Circle back to code later.
Anthony Fu 🦋 @antfu.me@antfu7

Thank you GitHub, but that’s not how we build software. AI should help us focus more on reasoning, design, communication. Filter spam and unnecessary noise, not helping creating them.

English
2
1
27
3.1K
Abdullah Atta nag-retweet
ハセン حسن
ハセン حسن@hasen_95dx·
I see this a lot from people who are strongly influenced by the OOP way of thinking: creating multiple "concrete" types to handle slight variations between use cases, and then plastering virtual functions on top of them to create a "unified" interface. It's actually much simpler to just create a simple uniform type that handles all the cases. The other day I watched a video from an OOP advocate, supposedly demonstrating the benefits of polymorphism. He explains a use case where you have an expected publishing date for a book, but it might be only specified partially, for example: just the year and the month, or just the year. He still wants to be able to use this for sorting books chronologically. His first "procedural" design had two flags: 'IsMonthSpecified' and 'IsYearSpecified'. He did not like checking these flags all the time, so he turned to polymorphism and inheritance: creating two partial data classes: 'YearMonth' and 'Year'. Both have a 'DateOnly' object as an internal state, but they change the implementation for date I will be the first to admit: I used to program in this way too. Now I just view this whole thing as a waste. The only thing you need is a struct that specified year, month, and day as integers. You need a language that does Zero initialization by default for this to work (both Go and Odin fulfill this requirement). A partially specified date is just ... literally a partially specified date. You keep month and day unset (aka set to zero) to indicate they are unspecified. You don't need to add any new methods or new types or anything. For the purpose of sorting, you don't even need to check if the month or day are set. They just naturally sort in the correct order (as given by the hypothetical requirements). Furthermore, IF you want partially specified dates to sort _differently_, you can implement that as needed, on a case by case basis. ------ More importantly, the deeper lesson here is you should *NOT* try to encode the problem space into the type system. (Unless doing so results in a simpler program). In the vast majority of cases, adding more types to your program introduces more complexity, not less.
ハセン حسن tweet mediaハセン حسن tweet media
English
28
14
307
53.4K
Abdullah Atta
Abdullah Atta@thecodrr·
@ospfranco I don't think you understand what "test of time" means. cURL, SQLite, C etc all have their own set of issues and difficulties. You wouldn't exactly call C to "easy to work" either yet nothing can replace it. Why?
English
1
0
0
38
Oscar Franco
Oscar Franco@ospfranco·
@thecodrr Hard disagree, React is so difficult to work nowadays and scales so poorly it's just waiting to be replaced
English
1
0
0
42
Oscar Franco
Oscar Franco@ospfranco·
There are fundamental pieces of software that have survived the test of time and will remain there; sqlite, curl, C, etc I'm curious what do you think will survive from our time: RN maybeeee, but Rust, libsql are strong contenders IMO Wdyt?
English
2
0
6
952
Abdullah Atta nag-retweet
Idris
Idris@7signxx·
I don't know who this man is, but may Allah bless him...
English
13
287
719
22.9K
Abdullah Atta nag-retweet
Supreme Leader Wiggum
Supreme Leader Wiggum@ScriptedAlchemy·
I've converted QuickJS from C to Rust. Much better.
English
3
2
35
3.8K
Abdullah Atta nag-retweet
gaurav
gaurav@gaxrav·
we judge others by their results. we judge ourselves by our effort.
gaurav tweet media
English
84
922
19.1K
925.5K
Abdullah Atta
Abdullah Atta@thecodrr·
Deno is becoming more and more pointless by the minute. Node.js also supports ESM, web APIs like crypto etc. Node.js can also run typescript directly now. Sure its under an experimental flag but...come on. Why would anyone use Deno over Node.js?
Ryan Dahl@rough__sea

deno.com/2

English
0
0
1
193
Abdullah Atta nag-retweet
Abubaker Abed
Abubaker Abed@AbubakerAbedW·
Listen to this, pinch yourself, and then listen to it again. I can't believe that this is the BBC. That's a top, top analysis. That's journalism. That's how media outlets should work. Well-done, @BBCWorld
English
450
7.9K
29.9K
2M