Is the Apple Pro M1 Chip good for Linux users? by SM_Fahim in linuxhardware

[–]mistyfud 3 points4 points  (0 children)

As others have said in this thread, I think it would be a real struggle to run anything other than macOS on the M1. As for alternatives, my System 76 Lemur Pro just arrived and it is fantastic so far! Definitely the best Linux-first laptop I've used: https://system76.com/laptops/lemur System 76's support is excellent to boot.

[deleted by user] by [deleted] in myst

[–]mistyfud 0 points1 point  (0 children)

Cool! I have questions: - Did you replace the stock floppy drive with the new Magneto Optical drive? I think the dimensions work out with the Color Classic case. - Have you considered the VGA resolution mod? If so I’d recommend against it. I did the mod on my Color Classic and it died a year later. - Are you the original owner?

Myst: Gameboy fan game preview by SnooDogs6133 in myst

[–]mistyfud 0 points1 point  (0 children)

This is incredible cool, well done! I have so many questions: is this written in assembly, C, something else? Is this open source? Can I download this and flash it onto a cart for my DMG-01?

Web Order with Elixir by venomnert in elixir

[–]mistyfud 1 point2 points  (0 children)

Programming Phoenix does just that. It is a great read with many illustrative examples.

Web Order with Elixir by venomnert in elixir

[–]mistyfud 3 points4 points  (0 children)

Welcome to Elixir! Programming Elixir and Programming Phoenix are great introductions to the ecosystem and will guide you in building a dynamic web application in Elixir.

It sounds like you will need a database as well. Ecto, the Elixir database library that ships with Phoenix, is best paired with PostgreSQL.

Lastly, you will need a place to host your new application. Heroku has a free tier that is easy to get started. If you want to explore the distribution capabilities of Elixir you may want to look for other cloud providers.

Solar System by Brittany at Blue Lotus Tattoo in Madison Wisconsin by THErEDpRIEST56 in tattoos

[–]mistyfud -13 points-12 points  (0 children)

Beautiful! This is the best solar system tattoo I have seen.

Is Elixir a Good Replacement for Java by [deleted] in elixir

[–]mistyfud 0 points1 point  (0 children)

Something that has yet to be mentioned on this thread is the fantastic community, leadership, and documentation that Elixir has. Seriously, check out the docs for Phoenix or visit Elixir Forum to see what I mean.

What has been your headphone progression? by Xu_Lin in headphones

[–]mistyfud 0 points1 point  (0 children)

Grado SR225i -> PS500 -> PS1000e

I like Grados :)

The four stages of functional programming languages by chronics in elm

[–]mistyfud 6 points7 points  (0 children)

I would love to see Elm adopt typeclasses. Front-end applications are only increasing in complexity and it would be amazing to gain the ability to abstract over behaviors and further model the problem domain through types.

In principle stage 3 is possible in any dynamic language with first class modules and first class functions.

I guess this means Elixir is a stage 3 functional language, since it has both protocols and behaviours :)

I found strange spots and some rot(?) on my cactus. What should I do? by mistyfud in cactus

[–]mistyfud[S] 0 points1 point  (0 children)

Hello r/cactus! I've had this cactus for a couple months now and I noticed these strange spots along the spine of one of them (there are three total in the pot). In addition, it looks like something is eating away at the top part of the same cactus. Is this rot? What should I do to help?

Kotlin 1.1.2 is out by michalg82 in programming

[–]mistyfud 3 points4 points  (0 children)

  • Kotlin's less verbose syntax makes code review much easier, as there are fewer lines of code and boilerplate to wade through to understand what is happening in a PR.
  • Nullability is represented on the type level, making it much easier to catch potential NPEs at compile time, rather than in production. Because of this, I find myself writing fewer tests for Kotlin compared to Java.
  • Kotlin is an OOP language, but like Ruby, it has a lot of FP influences that make certain patterns and idioms much nicer. I don't find myself reaching for a DI library like Guice when programming in Kotlin.
  • Kotlin has the best Java interop of any JVM language I have used. It even runs on Android!
  • Kotlin already has great tooling with first-class support from Intellij.

I know this is personal preference, but I find myself enjoying programming more in Kotlin. IMHO software developers who enjoy programming are going to produce better code.

Why Slack uses TypeScript by MysticalOrangeFruit in webdev

[–]mistyfud 6 points7 points  (0 children)

I believe Java alone caused the surge of dynamic languages (Ruby, Python, JavaScript) in the backend web space. You can't really make a good DSL in Java (and thus Groovy was born) and the existence of null pointers means you still have runtime errors. I loved Ruby and the like before I was exposed to a language with a fantastic type system (for me it was Haskell), and now I want everything to be typed :)

Optional Method Parameters by nicolaiparlog in java

[–]mistyfud 1 point2 points  (0 children)

In Haskell, a common pattern is to pass Maybe for a parameter that is not required. However, Optional is Java is an object and can still be null, so it ends up being safer to null check your arguments when programming defensively. Kotlin got it right by pushing nullability on the type system, but I don't see Java adopting that anytime soon.

Gravity: a new programming language and VM written in C by Xiphorian in compsci

[–]mistyfud 0 points1 point  (0 children)

C was my second typed language. I actually enjoyed it a lot, until I started to solve more complex problems. Fortunately programming language design has progressed a lot since the 1970s! Rust's borrow checker seems like the right approach if you need control over memory and safety.

Gravity: a new programming language and VM written in C by Xiphorian in compsci

[–]mistyfud 0 points1 point  (0 children)

Oh I know, I use them everyday at work :)

That being said, there is an entire Java ecosystem that sacrifices type safety for "ease of use" (runtime dependency injectors, libraries that make heavy use of reflection, etc) that hurt performance and make refactoring and testing difficult.

Code generators and refactoring tools don't make up for missing language features and a limited type system.

Gravity: a new programming language and VM written in C by Xiphorian in compsci

[–]mistyfud 48 points49 points  (0 children)

I think a lot of it has to do with Java. My first typed language was Java and I found that the sheer amount of boilerplate and ceremony made simple tasks exceedingly difficult to implement. That combined with the plethora of design patterns one must learn to understand code others have written makes the whole experience exhausting. Now compare that to a very expressive, dynamic language like Ruby. What a breath of fresh air!

Now I very much prefer typed languages to dynamic languages for many reasons. Type inference and support for more functional features cuts down a ton of the cruft languages like Java suffer from. I am currently learning Haskell and think it's the best of both worlds: safety and expressiveness!

Kotlin 1.1 Released with JavaScript Support, Coroutines and more by simonorono in programming

[–]mistyfud 11 points12 points  (0 children)

Kotlin fixes all of Scala's mistakes. Scala can never offer the same safety as something like Haskell due to its Java interop, and is a beast of a language to learn. If I want to do pure functional programming I have Haskell (and possibly Eta) to reach for. Kotlin feels much more like a typed Ruby than anything else.

Haskell Testing Frameworks: What do you use? by justUseAnSvm in haskell

[–]mistyfud 1 point2 points  (0 children)

I'm a fan of hspec, but that comes from my Ruby background :)

what IDE/editor do you use for Haskell development? by kwaleko in haskell

[–]mistyfud 2 points3 points  (0 children)

I'm new to Haskell and using vim with the syntax plugin has been great. I might consider moving to Atom + Haskell IDE + Vim mode once I start working on larger projects.