There are so many mentions of reading paper. Do papers like these exists for regular enterprise software devs like me who make apis in Dotnet/go, good knol of multiple major cloud tools, k8s etc, has developed couple of iOS apps.
I can do my job but I always wanted to learn and understand more. Family circumstances mean I can't afford to quit my job or go to school.
For a software engineer I would rather recommend implementing from a reference software implementation. There are for example tons of "Model XX from scratch" in Python - which you can translate to Dotnet/Go.
Implementing code from a paper is almost its own skillset. Papers are often math heavy and they are information dense, with lots of references to exiting works. They are designed for communicating to other researchers in the same field/niche.
I bet, India is on the top3. Pharmacy culture in India is liberal. U can walk into any pharmacy without prescription and buy most meds including Antibiotics. It's a different story online, but even then there are ways to get around.
He just explained that he’s using open source tools to take other people’s hard work and re-host it, using an account he set up seemingly just to promote this service. Looking at the website itself I don’t think it’s particularly offensive but I could see why people might not like it.
An AI summary of the article by definition contains information from the article; otherwise it would not be a summary. Whether or not you consider this rehosting is muddy but some people might, which is all my comment was saying.
Then its regular sugar addiction and not necessarily related only to milk tea.
Milk tea does not need to contain sugar. Bubble tea chains usually give you the option to choose. Also when I visit indian friends some of them usually refrain from putting a lot of sugar into it, not bubble teavin this case but still milk tea.
Is JS/Express/Apollo still the goto graphQL server implementation or C#(HotChocolate), Java, go etc are widely used too?
On the client side(for mobile), AFAIK iOS(Swift) and Android(Kotlin) does not support GraphQL natively? are there 3rd party libraries that can be used?
> Java/Kotlin: Netflix DGS (built on top of Spring Boot)
Is that really popular? I'd rather use graphql-kotlin (expedia), graphql spring (yes, recent Spring module), quarkus graphql (code 1st) or just about anything else than that...
> Node.js: GraphQL Yoga + Fastify, Apollo Server
Typegraphql is / was hugely popular; there's also an Express based Graphql server
I've been using json-api with graphiti in rails. And I gotta say the massive gain from it is that it's all rest and a trivial client impl from scratch if necessary.
Couldn't recommend it more.
Have to say. Most json-api impls suck, so graphiti has been a game changer for me.
N+1 are a problem buuuut it forces you into good model designs and good tools like graphiti and the latest rails show you the cause of the n+1s so it's not so bad to debug.
Unrelated: but why does Google use Kotlin(for developing Android apps) and Rust when they have a nice little language in Go. Genuinely curious: Is Go not a good fit for developing Android apps(Is targeting JVM the concern?) or system programming(using Rust in Android systems), what does it lack?
My take is that Java -> Kotlin was a very natural progression, as they are very similar languages with an identical runtime in the jvm. Kotlin is just a better Java, which is incredibly easy to adopt into an existing Java ecosystem.
But then they also wanted a more bare metal environment in addition to that. So something like C, C++, or Rust.
It's always been unclear whether Go belongs in that list. It was conceived or at least positioned as a "systems" language like those I listed, and there was noise early on about it replacing C++ codebases at Google, but with over a decade of hindsight now, I think in practice it's pretty clearly a Java replacement rather than a C++ replacement. (I guess there's a fun symmetry here in that Java was also conceived as a C++ replacement and also wasn't.) But Kotlin is just a much more natural way to fill the Java replacement niche on Android.
I dont have first hand knowledge, but I've been in the space for 10 years and wrote Go, Java, Kotlin, so here is my take.
Kotlin made a huge effort to stay compatible with Java. You can call Kotlin code from Java and Java code from Kotlin, so orgs could migrate their apps piece by piece. The only real incompatibilities that I've experienced were when going from C code via JNI into Kotlin. All sorts of really weird issues creep up.
There was no boiling the ocean in any of the large apps I worked on at Amazon and Meta - just add Kotlin and see how it goes, it's a really easy sell to tech VPs. First we added Kotlin just for the unit tests, then for small features and eventually with Google releasing Jetpack with Kotlin extensions, for all new apps and features.
Kotlin also improved upon existing painpoints in Java and provided a ton of syntactic sugar for things that were tedious in Java. For example, proper get/set syntax for fields, data classes with autogenerated equals/hashcode, explicit nullability for types, val with 'final' semantics to get rid of all the final variables, fields in interfaces, top level functions, etc. All the functional stuff in it is nice too.
Go is much leaner than Kotlin. The VM or performance is not an issue - Kotlin generates entire classes for simple syntax, to make things convenient and compatible, but the bytecode is pretty bloated.
I imagine that Google had sufficient resources to make a Go<->Java translation layer (though Go would have needed generics) but transitioning a huge API like Android is already a large effort, and if the language isn't fully compatible with the existing code, it would have added an order of magnitude of complexity, so Kotlin was a much easier sell.
In my opinion, migrating to Dart would have been more practical than Go (as evidenced by Flutter), so thats the real head-scratcher. It would have been easy for Java devs to learn Dart because the OOP concepts translate directly.
Other factors:
Google already had a relationship with JetBrains because of Android Studio.
The Oracle Google lawsuit was happening at the time and I speculate that Google needed to show to Oracle they can move off of Java. Kotlin happened to be available.
The lawsuit excuse has always been quite a lame one, because regardless of Kotlin or Java, the whole Android development stack depend on the Java ecosystem for the IDE, Gradle, Maven Central based libraries, and Android team never made any effort to port anything on top of Kotlin/Native, or even improve it.
Most system APIs are only exposed in the JVM environment without native equivalents. You do need a JVM language to do anything meaningful. Either that, or you'll have to use JNI.
because some people in charge of android mistakenly believed that because some stats claimed Java was the most popular language that chosing Java would lead to the most developers for android (and then they chose Kotlin later beacuse it's a better Java and compatible with the JVM)
IMO, choosing Java was one of the worst decisions they ever made. There's a reason why no other platform (PS5, XBox, iPhone, Mac, Linux, etc..) don't choose a language like Java. Android has so much jank because they chose Java
Choosing Java made a lot of sense when Android got started. The binary architecture for mobile devices was not standard in any way, ARM, MIPS, x86 were all in common use at some time or another. And nowadays AArch64 (which is not the same as older ARM) is quite widespread. Plus there was nothing like WASM back then, so if you wanted binary independence for apps and the like you were stuck with something very much like Java.
Not sure why they picked Kotlin (probably JVM interop) or Rust, but Go's thread safety is closer to C++ than Rust. I think of it as an excellent python replacement, not a C++ replacement.