@ramin_hal9001@emacs.ch
@ramin_hal9001@emacs.ch avatar

ramin_hal9001

@ramin_hal9001@emacs.ch

I'm just some kind of nerd: software developer, big fan of functional programming, especially Haskell and Scheme. I also love old Macintosh computers. Haskell programming since 2007, Linux user since 2008, Emacs user since 2018. Currently working as an app developer at a small machine learning consultancy. You could call me a "full stack" engineer, but server-side is where I am really in my element.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

louis, to random
@louis@emacs.ch avatar

The Mastodon developers started to implement telemetry for everything you search for: Posts, Accounts, Tags

https://github.com/glitch-soc/mastodon/commit/acc77c3836974473e7c6a423cbd1138479ae197a

I'm not so sure if I like what I see in this commit. But we all knew it would be coming eventually.

So important that we build Mastodon-compatible server alternatives.

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@louis if you want to switch servers, I fully support trying alternatives. I am sure that would be a lot of hand-wringing work, especially trying to ensure the database is properly migrated, but if you feel like it is necessary, I am in favor of it.

noc, to fediverse
@noc@mas.to avatar

1️⃣ - started setting up obsidian for interstitial journaling

2️⃣ - got some advanced french books to study, in hopes of unlocking that part of my brain (all my schooling, k-12 was in french and haven’t spoken it to anyone since)

3️⃣ - the general sentiment here in the that the internet, as it is, sucks a big fat one but we can build things and work together to make it better. that shit is punk af and i’m here for it.

@3goodthings @weirdfolks

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@noc @3goodthings @weirdfolks glory to all things punk. Especially the Fediverse and Linux.

jhx, to de
@jhx@fosstodon.org avatar

For anyone looking for a stable and easy to use (Desktop Environment) that just works:

Give it a try! 😎

The project and all it's dev's and maintainers do a great job at producing a working desktop that is a breeze to use. :xfce:

https://www.xfce.org/

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@jhx I have been using it for years, and it is so simple and stable and reliable that I honestly forget it exists most of the time.

I do like other desktop environments. I would like to give Cinnamon, and even Gnome and KDE Plasma a try, even if just temporarily. But then whenever I think I might finally switch, I think, "well, why should I?" And there is really no reason to, because all of my desktop environment needs are 100% satisfied, so I don't.

aral, to random
@aral@mastodon.ar.al avatar

International law is whatever the Unites States says it is, you fucking communists. Don’t make us nuke you again!

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@aral I know you are being sarcastic, but....

daviwil, to scheme
@daviwil@fosstodon.org avatar

Lambda Dungeon is starting to look pretty good!

#guile #scheme #lisp #gamedev #gamejam

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@daviwil I can't wait to see the reference manual for the in-game scripting language.

publicvoit, to reddit
@publicvoit@graz.social avatar

Pre-warning to my followers: I'm going to leave for good and I'm blogging about the reasons - mostly because reddit management gone crazy (latest: my isn't working any more for reddit) & also because of https://karl-voit.at/2020/10/23/avoid-web-forums/

If you did not already, organize yourself a decent / aggregator and follow good content from there. My blog has also feeds to follow: https://karl-voit.at/how-to-use-this-blog/

I presume you could use Mastodon as a feed aggregator as well: https://duckduckgo.com/?t=ffab&q=mastodon+as+rss+aggregator&ia=web

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar
  • No Backup, No Distribution
  • User Interface Dictatorship
  • Rule Monopoly and Subjective Censorship
  • User Account Hurdle

@publicvoit those are all good reasons, but the biggest reason I gave up Reddit was that they are selling my writing on their website to companies like OpenAI to train their large language models. I believe it is extremely exploitative and unethical to take this information that was given to them for free to develop this technology that they use to generate massive profits for themselves.

ramin_hal9001, to scheme
@ramin_hal9001@emacs.ch avatar

To anyone writing programs in #Scheme right now, this is just a reminder that you can search through a huge cluster of Scheme libraries indexed by procedure name, including all SRFIs, at the https://index.scheme.org/ website. If you need code to do something, try searching by keyword to see if someone has already written it. Most APIs listed there even have Haskell-like types and are tagged as "pure" if they are pure.

#LispGameJam #springlispgamejam2024 #Haskell

Radical_EgoCom, to random
@Radical_EgoCom@mastodon.social avatar

The Capitalist Cycle

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

> "In American mythology, people are rich because of "hard work" yet nobody can explain why those who do all the actual work have no money."

@bhasic @Radical_EgoCom the scripted reply to this is "some people work smarter, not harder." But then you have to ask, is a CEO really 1000 times smarter than one of his employees, or is it just that how "smart" or "intelligent" a person is is defined by the amount of money they have?

sirlan, to programming

just now thought about something

scratch, the 'language' for teachings kids the basics of , has better first class support for async work than a bunch actual programming languages

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@luis_in_brief @sirlan well, it is easier to do async when there aren't any actual hardware threads to worry about, and it is all happening in a virtual machine.

I prefer Snap because you can do first-class functions, plus they have some pretty incredible lanugage additions like "SciSnap!" which give you access to SQL databases and linear algebra primitives, and they even have an APL implementation. Anyway, Async works the same as in Scratch.

But it does get a little tedius if you need to create more complex chains of async actions, like for doing animation. Then I start to wish it had a good built-in nonlinear editor.

jhx, to xfce
@jhx@fosstodon.org avatar

A very nice launcher (and much more) is rofi.
I use it with to quickly run a application. It is easy to use and the defaults are sane.
Bin it to a keyboard shortcut of your liking and it will be your best buddy soon 😎

https://davatorium.github.io/rofi/

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@jhx @puppygirlhornypost Xfce's own WhiskerMenu (which is a panel app) is also very good, and that is what I use. I have tried Rofi, but for all of the features that I use in a launcher, it did not really provide anything new that was not already present in WhiskerMenu.

ArneBab, (edited ) to random German
@ArneBab@rollenspiel.social avatar

define-typed: a static type syntax-rules macro for to create API contracts and help the JIT compiler create more optimized code:

https://www.draketo.de/software/guile-snippets#define-typed

Improved thanks to feedback from Vivien and Zelphir in the Guile User mailing list.

Just 26 lines to get argument and return value typing without changing Guile.

I love the flexibility of ❤️

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@ArneBab this is awesome! I want to explore this type system a bit myself!

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@ArneBab I have been playing around with monadic code in Guile myself lately, and I can see a fairly easy way to incorporate type checking into my system as well, and you have already given me some ideas here.

What is nice is that if you make use of record types as a kind of Functor, and all of your monadic code constructs functors, and the compiler does constant folding and dead code elimination passes, the optimizer would probably be able to tell right away any time you use a procedure wrapped in the Functor type that a "cond" or "case" expression will always evaluate only along a single branch. So it should be able to eliminate code branches that cannot pass type checking.

But I have more experimentation to do before I can confirm whether this is the case. Also, I don't think those optimizations can apply everywhere, only at top-level declarations. But I could be wrong, it might work in arbitrarily nested closures as well.

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@ArneBab that is precisely what I intend to do. Thanks for that link to David Thompson's article, I don't think I had seen that one before.

noondlyt, to fediverse
@noondlyt@mastodon.social avatar

You know what's nice about here...knowing I can criticize and call out any corporation, politician, or wealth hoarder without being suppressed, hidden, etc at the whim of advertisers or megalomaniacs.

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@noondlyt I like the fact that I can learn about transgender issues and use the word "cisgender" without having my post flagged or my account suspended...

unlike at that other site...

ramin_hal9001, to fediverse
@ramin_hal9001@emacs.ch avatar

PC world has an article here about whether you can use a VPN to circumvent the .

No. Just, no. Not , nor any other technology is a solution, because the problem is much deeper than that. The US banning TikTok is just the beginning, they will simply continue expanding of any content the government finds objectionable. We may soon find governments like the US passing legislation that running an server of any kind is illegal "terrorist activity" before long, and all NATO countries will follow suit (they must, or else risk losing NATO membership).

And of course the stated reason for the US blocking whole portions of the Internet is for "cypersecurity" reasons. Anyone with half a brain knows the real reason is to try to prevent sharing knowledge across borders, because that is the real threat to the politicians and their bosses.

It is really no different than what countries like China does with their Great Firewall, or what Iran does whitelisting only certain blocks of the Internet that exists outside of their borders, also for "cybersecurity" reasons. Of course the US government will continue to cite censorship of free speech as a reason that countries like China or Iran are inherently evil. This deranged political double-speak is the norm nowadays, as "antisemitism" is used as a justification to arrest Jewish people who protest war at their universities, but I digress.

seachanger, (edited ) to random
@seachanger@alaskan.social avatar

For every $1000 you purchase at a small business...

pay by credit card: about $30 to credit card corporation, $970 to small biz

pay by cash or paper check: $1000 to small biz

pay by e-check: about $10 to banks, $990 to small biz

most small businesses have 10-30% profit margin, so a 3% credit card fee may actually be 1/10 -1/3 of their profit on your transaction

ramin_hal9001,
@ramin_hal9001@emacs.ch avatar

@seachanger but that is just the free market, these don't count as taxes, so its totally OK. (sarcasm)

Seriously, the "small government, less taxes" people are always complaining about the wrong thing.

louis, to linuxmint
@louis@emacs.ch avatar

I jumped ship and hopped over to the Linux Mint crowd. I used Pop_OS for ~3 months and it was an overall good experience on my ThinkPad X1 Gen 8.

But I always liked the Cinnamon desktop as I have used Mint for over a year before. And I didn't want to be part of the Rust-based re-invented desktop experience (COSMIC) driven by a company. Ultimately I believe that Linux is and should continue to be a community effort. Also, there were some minor annoyances (like the Pop_OS store eating up 1.2 GB of RAM all the time even when it is not running, an issue System76 is aware of for quite a while). And also, Snap.

If feels good to be back to a trusted distro whose maintainers generally make the right decisions (i.e. removing Snap).

Let's see how long it will last ;-)

ramin_hal9001, (edited )
@ramin_hal9001@emacs.ch avatar

@louis I am definitely going to switch from Ubuntu to another distro pretty soon, and I have been torn between standard Debian with Xfce, or Mint with Cinnamon. I think I will go with Xfce because they are mostly keeping up with the latest Gtk. They long ago moved to Gtk+ v3 and are gradually transitioning to Gtk4, probably to prepare for the larger transition to Wayland.

But Cinnamon has forked Gtk+ v2 into its own widget toolkit now, so it is kind of its own platform based on GLib and GObject, and it seems to be quite stable and over all a good user experience. It would be nice to have some of my apps programmed to work with either Cinnamon or Xfce. We will see if they will be able to port it to Wayland without the help of upstream Gtk.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • rosin
  • khanakhh
  • osvaldo12
  • Durango
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • magazineikmin
  • thenastyranch
  • cisconetworking
  • Youngstown
  • slotface
  • kavyap
  • JUstTest
  • cubers
  • anitta
  • GTA5RPClips
  • tester
  • ethstaker
  • modclub
  • InstantRegret
  • everett
  • provamag3
  • Leos
  • normalnudes
  • tacticalgear
  • lostlight
  • All magazines