Tamer Abdulradi

1.5K posts

Tamer Abdulradi banner
Tamer Abdulradi

Tamer Abdulradi

@tabdulradi

AI Platform Engineer @Apple Pay #Python #Scala #distributed_systems ex @justeattakeaway @DisneyStreaming

London, England Katılım Haziran 2013
222 Takip Edilen867 Takipçiler
Nabil Abdel-Hafeez
Nabil Abdel-Hafeez@987Nabil·
Shoutout to @jdegoes and @aplokhotnyuk for the solid fundamentals + killer performance work that got us here. Recently, John and I went wild with fresh features + micro-libs 🔥 The goal: blazing high performance + excellent DX + plain Scala. Zero ZIO deps. Zero anything else. github.com/zio/zio-blocks
English
5
14
66
2.9K
Tamer Abdulradi retweetledi
News from Google
News from Google@NewsFromGoogle·
Joint Statement: Apple and Google have entered into a multi-year collaboration under which the next generation of Apple Foundation Models will be based on Google's Gemini models and cloud technology. These models will help power future Apple Intelligence features, including a more personalized Siri coming this year. After careful evaluation, Apple determined that Google's Al technology provides the most capable foundation for Apple Foundation Models and is excited about the innovative new experiences it will unlock for Apple users. Apple Intelligence will continue to run on Apple devices and Private Cloud Compute, while maintaining Apple's industry-leading privacy standards.
English
1.6K
6.5K
52.4K
11M
Flavio Brasil
Flavio Brasil@fbrasisil·
@ivanthevague No, I’m porting an AI solution from Scala/Kyo to regular Python without an effect system. Yes, it’s terrible
English
5
0
10
594
Flavio Brasil
Flavio Brasil@fbrasisil·
I'm currently porting slick Scala code with proper type safety, convenient APIs, effects, rich type system, structured concurrency to... python. In my free time, of all things🤦‍♂️ I'm starting to wonder if I have it in me to do any open source anymore. It's a thankless job where anything of value you deliver is either a commodity or a weapon against you. Scala really has its way of souring anything good. Only from the ashes can something of value come out of it
English
14
1
55
5.8K
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@iiman_rabiee هو بس نصيحه بلاش اسم tool او framework في ال title بتاعه. دي زي نجار اختصاص شواكيش كده.
العربية
0
0
1
85
𓂆 إيم إيم
𓂆 إيم إيم@iiman_rabiee·
اخويا بيدور على شغل هو خريج حاسبات درس فى ITI تراك Full Stack Python Developer بقاله مدة بيدور على شغل ك junior odoo developer او تدريب يساعده يدخله المجال سواء كان full time او part time Remotely او onsite لو حد قدامه ريكومنديشن للشركات يقدم فيها / ريتويت هكون ممتنة جدا
العربية
31
335
1.2K
78.2K
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
hey @FlinkForward I am trying to reach out to hello@flink-forward.org regarding my ticket. Can you please check your inbox?
English
1
0
0
71
Tamer Abdulradi retweetledi
Ounka
Ounka@OunkaOnX·
When Spanish and Palestinian music collide…!!
English
438
7.9K
35.2K
551.7K
Flavio Brasil
Flavio Brasil@fbrasisil·
@hmemcpy A language that forces users to think about memory management isn’t an ideal level of abstraction to build more accessible solutions. It’s a good language, just not for what I’m looking for. I love performance but it’s second in my priorities :)
English
1
0
10
769
Flavio Brasil
Flavio Brasil@fbrasisil·
During the past days, I’ve been considering what to do next as a hobby. It’s definitely not easy to leave a significant work like Kyo behind but, given the follow ups since my withdraw, it’s looking more and more like there isn’t a space for me in Scala. What are good languages I could try? Rust isn’t a good option for me, I enjoy building more high-level and accessible solutions. Same with Unison because of the Haskell syntax. TS is nice but no macros and only structural types is too limiting. What else is there? I’m not following new languages for some time now Or should I build a new language? An effect system or a new language was the main decision when I started Kyo. Perhaps I chose the wrong path
English
41
2
31
5.5K
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@propensive @fbrasisil @guizmaii @vpatryshev Yes, you can use it with for-comprehension, and won't let you violate monadic laws by disabling nesting. I don't recall the map/filter showing in my autocomplete for non-union types (it has been a long time and I almost forgot Scala by now 😅)
English
1
0
2
361
Jon Pretty
Jon Pretty@propensive·
So your nullable (union) types get monadic operations? It's a nice solution that doesn't require a lot of code! I didn't look closely, but is there a way to avoid the extension methods being applied to non-nullable types? Since T <: T | Null, by default the extension methods can also map/filter over any value. I'm a big fan of explicit nulls, though!
English
1
0
3
230
Jules Ivanic
Jules Ivanic@guizmaii·
Do you think it'd be possible to write a Scala compiler plugin that would remove the `Option` allocations from people's programs? Turning every function `A => Option[B]` into a `A => B | Null` 🤔
English
8
0
6
2.5K
Jon Pretty
Jon Pretty@propensive·
@fbrasisil @guizmaii @vpatryshev The flattening isn't a problem in practice, if a) you don't care about a semantic distinction between None and Some(None) and b) you know your types concretely. You get problems when you want to represent Option[T], and you can't guarantee that T is not another Option.
English
4
0
4
410
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@fbrasisil @etorreborre Mine is: 1. Build something half baked 2. Submit talk propsal promising feature that doesn't exist yet 3. Panic when talk get accepted, then actually implement the feature 😅
English
1
0
5
273
Flavio Brasil
Flavio Brasil@fbrasisil·
@etorreborre Mine is: 1. Build something cool 2. Procrastinate as much as possible to prepare the talk 3. Get desperate as the talk approaches 4. Rush to make slides and rehearse I'm hoping to do a better job this year 😅
English
1
0
9
204
Eric Torreborre
Eric Torreborre@etorreborre·
I've been asked what is my 4 phases process for preparing talks: 1. Collect ideas / research / make a plan. 2. Make slides. 3. Practice the slides out loud. Refine / animate the slides until the flow is smooth. 4. Practice the slides out loud. Adjust until the timing is ok.
English
3
1
12
994
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@987Nabil @debasishg Shifting validation to the edge of the program is desirable and endorsed by the article itself. Also this retains the saftey outside Book. For example consider `renderAuthors(book.authors)`.. without NEL renderAuthors is prune to receive an invalidated list.
English
1
0
1
44
Nabil Abdel-Hafeez
Nabil Abdel-Hafeez@987Nabil·
@tabdulradi @debasishg While this makes the type more precise, it shifts the error handling just to another place. You still need to create a NEL or NonBlankString before the constructor. What is more desirable depends on the software you build.
English
1
0
0
58
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@987Nabil @debasishg Whilst this is an improvement. The ideal would be a NonEmptyList or have two seperate fields "firstAuthor" and "restOfTheAuthor", if no NEL impl available. This way no need for a smart constructor.
English
1
0
0
56
Nabil Abdel-Hafeez
Nabil Abdel-Hafeez@987Nabil·
@debasishg You can ofc return errors as values. If you use a smart constructor and check your inputs before calling the constructor.
English
2
0
1
551
Tamer Abdulradi
Tamer Abdulradi@tabdulradi·
@_JamesWard @velvetbaldmime Exactly my thought as well. I think it's dangerous that main account is abusing the term to rebrand nothing but "smart constructurs" or defensive programming. The second example that didn't made it to the screenshot is actually more aligned with the concept.
English
0
0
2
185
James Ward
James Ward@JamesWard·
@velvetbaldmime It is great that the concept is reaching more mainstream. But.... Runtime Exceptions aren't really making illegal states unrepresentable. :)
English
2
0
34
1K