Follow

"And I realized that the inherent bitterness and negativity of programming arguments and technical defensiveness on the web were making me bitter and negative. I've consciously tried to rewind, to go back to when programming was a tool for implementing my visions, not its own end.

prog21.dadgum.com/56.html

· · Web · 3 · 6 · 18

I feel like the anger I have toward my computer has had me skirting dangerously close to this as of late. I try to remind myself to just "take it, or brush it off, everybody else is". Sometimes being frustrated with my computer sends me down spirals that don't have any sort of positive outcome when I have fallen so far from the problems I was trying to solve, the art I was trying to make, or the music I was writing.

"a tech-first view promotes scarcity thinking (that is, making perceived memory and performance issues be the primary concerns) and dismissing good ideas because of obscure boundary cases. And now programming seems less frustrating than it once did. "

@neauoire solving the problem you set out to solve is important. i personally have a passion for osdev, but if that's not your vision it isn't going to be a fun time! i have the (perhaps unfortunate) pleasure of being one of those weirdos that can't stop thinking about operating systems and nomadic inter-networking.

i hope you can find the focus you are looking for and that the osdev friends can make the 9fam space a little more comfy for everyone involved ^^

@neauoire I wonder what you would do if you stopped working on computers with some frequency.

@grey I've done long stretch without computers(recently 50 days), but I guess I just do paper computing, which is not necessarily better in some aspects.

@neauoire When you say paper computer, do you mean thinking about computer systems in analog? Or do you mean something else?

@grey yeah sort of, skirting close to conlang stuff, but for computers.

@neauoire It's clearly an attractive problem to you! I can relate. I still wonder what other directions you could go. Watching your struggles with computers seems antithetical to what I observe of your goals outside of computers. It totally makes sense, but it's a curious journey to view from outside. I also suspect the paradoxical aspects of that relate to the strong reactions to your experience.

@grey I could go full analog, or completely OSless, but to be honest, I'm super scared to make that leap. It seems inevitable, but I'm willing to delay this as long as my patience lasts for I'm totally intimidated by the steps needed to get there.

@neauoire I’ve been down this hole and only recently recovering. My trouble was caring too much about the how and not the what. Ex: could you have built orca with the restrictions you’ve placed on yourself recently?

Caring about how something is built is important but it shouldn’t be the focus. Focusing on the output will lead to better results. And you can improve the how as part of the process.

@peregrine probably not. That's the thing.

But I have a haaaaard fucking time ignoring.. well, that's the thing, ignoring how things are done is not really a possibility right now as it has a very real impact on my slow computer's speed, and our small battery bank.

I kindda wanna say, well fuck it, I'll just electron all the things, but then I have a very sluggish computing experience and 15 mins of runtime.

@neauoire Is there a middle ground though? could you, for example, work in C targeting unix so you struggle less with drivers and inconsistencies?

Not saying give up or w/e but you've recently veered from Electron(being well tested and generally easier to PRODUCE even if wasteful) to serious outskirts where everything is held together by people doing stuff in their free time and mostly everything is broken.

@neauoire also I'm giving advice that I in my current situation need/give myself so YMMV.

@peregrine I'm looking for that middle ground, but I can't find it. I've been rebuilding a bunch of stuff in sdl and x11, but they're terrible, that's a sort of a middle ground but it doesn't cut it.

I've been trying this and that thinking, well maybe I could keep on targetting emulators. Like, write everything for the MSX or something, but there's problems with that as well which is what I've been struggling with these past few days

I've been looking everywhere for smol-computer, cant find it

@neauoire github.com/floooh/sokol is something thats come a crossed my history lately. noting raspberrypi is supported in a branch ATM github.com/floooh/sokol/pull/1

@peregrine Oh cool, I will give that a shot. Seems to be inline with what I want.

@neauoire I think the keyword is "header only" :P but yea every search service seems to have gotten useless.

@peregrine @neauoire sokol is good, but you will still end up with the entangled mess of stuff to make things on Linux.

@peregrine @neauoire On Windows you can ship a single .exe and it will work on basically every computer, but this is pretty much impossible on Linux unless you restrict yourself to TTY only.

@cancel @neauoire is there something else with similar ideas? Seems like ideal case is a canvas shown on the screen.

@neauoire @peregrine the supposed replacement, Wayland, starts off in an even worse position.

@cancel @neauoire Lets be careful not to fall into another pit of dispair here, we were just trying to climb out of said pit.

Maybe an option is depending on GTK or QT but only to get to a canvas on screen?

@peregrine @cancel I'm taking a sabbatical from Linux today, gonna spend the day in plan9 instead.

@neauoire @peregrine Well, it's bad, but it's not hopeless. I ship Ripcord as an AppImage and it probably works on like 80%+ of Intel/AMD Linu installations.

@neauoire @peregrine I think it's fine to use Qt (do not use GTK) to draw stuff on screen and handle input. But it uses C++ so you'll have to know how to deal with that :P

Show newer
Show newer

@cancel @neauoire I just looked at AppImage and I'm now worried I'm having a stroke. Isn't this snap?

Show newer
Show newer

@cancel @neauoire @peregrine As an aside: this whole thread makes me feel crazy being frustrated with linux. Even for a neophyte like me the tangled mess of libraries is frustrating.

(Ripcord is the one piece of software I regularly use that is AppImage and I appreciate that)

@peregrine @cancel plan9 is the only actively developed thing that I know that can do it in an orderly manner..

@neauoire @peregrine it's also not too hard on Windows, though the cruft has built up over time. You can still do it, though, unlike Linux where it's no longer possible at all.

@cancel @peregrine making linux builds is a real mess, it looks like it's made in a way that distro mantainers should package your stuff and not you, and this could work when you want to keep all your stuff open source but if you want to sell something it clearly sucks, so for @neauoire could work for tools but not that much for games

sometimes i laugh thinking that developing stuff on linux using wine could be a sane way to make something work on all the distros

@npisanti @peregrine @neauoire that doesn't work great if you're a nobody that just wants a few friends also using Linux to try your thing.

And that model also doesn't work well if you want to deal with your users directly, or if you want them to have up-to-date versions, or have them try specific changes .

And if your thing gets popular enough, the distros will start applying their own patches to it, and your website will just be an empty husk with a copy of the man pages and source tarball.

@npisanti @peregrine @neauoire This is fine for commandline utilities that aren't supposed to change much, but maybe not great for something like an art tool or a game.

@cancel @peregrine @neauoire i know, i have no simple solution for that

on a side note i tried raylib (which you adviced me some time ago) to build my luajit sandbox for graphics, and it was good

raylib.com/

this should be a little easier to setup than sokol (that i still want to try to use for the next recoding of my visual tools stuff)

@npisanti @peregrine @neauoire raylib is great and easier to use. i recommend it if you want to get everything going at once. i know Devine tried to use it before, but got stuck due to broken sdl2 package from elementary (or ubuntu? can't remember) permanently screwed up his installation with no way to fix

@cancel @peregrine @neauoire really? i don't think it's using SDL, it's just using glfw for the windowing/input and then it has its own library for managing openGL (rlgl.h)

github.com/raysan5/raylib/wiki

<<DESKTOP:Linux
openGL, X11
Also requires linkage with libm(math), pthreads(POSIX threads), dl(dynamic loading) and X11 window system specific libs: X11, Xrandr, Xinerama, Xi, Xxf86vm and Xcursor>>

@npisanti @peregrine @neauoire maybe it was glfw and not sdl2. anyway, one of the packages was broken by his distro and they rolled it back after a few hours. the people unlucky enough to install the broken one were permanently screwed.

@npisanti @cancel @peregrine @neauoire I also tried Raylib on @cancel's recommendation, to work with my nephew. it worked really well for graphics, but the audio was pretty much non-functional, both on his end and mine.

@neauoire @peregrine I feel this! I think it's natural to feel friction from your tools, and start investigating where it comes from. Some hard things I've found about this:
1) everything in computing, even our most ancient and accepted processes, are relatively new (80 years perhaps at most for turning chip instructions into assembly).

@neauoire @peregrine 2) all tooling stacks in computing are complicated, and holding more than a few layers at a time feels nigh impossible. Should you rewind your tooling stack to C? to ASM? to logic gates? And while you're down there, what was it that you were even trying to *do* again?

@neauoire @peregrine 3) Even if you find *the thing* that you think needs to change (and you're lucky if you find exactly one rather than ten!), do you want to spend the next X months/years of your life fixing that thing, or doing the thing that motivated you on the way here? (making art, music, etc.)

@neauoire @peregrine 4) You can imagine a world where you commit to number 3, and *now* you are just one standard in a sea of standards, trying to make the world an easier place for people who are trying to make art, music, whatever it was you were trying to do, but are you *actually* making it better? After all, didn't you just make it more confusing (even if the thing you made truly is an improvement).

@neauoire @peregrine
There are lots more thoughts, but these are the ones that accompany me down these rabbit holes the most.

@neauoire That was an incredibly pleasant and relatable read. Lately I've been recapturing my love for creation, and the medium has taken a backseat to my vision.
Switching back between art, animation, audio, coding, and design has blurred the lines between them, and recently I've found myself doing what I want to be doing in that moment, while ignoring what "needs" to be done.
And I find myself grateful to be feeling this way.

@Lambdanaut I'm glad to hear, do you have any tips that helped you recover?

@neauoire Maybe. It's an odd perspective. I decided to buckle down and finally get to Masters league in Starcraft 2. To progress, I had to put aside my feelings of competing with others, and translate that to a feeling of competing only with my self and my own weaknesses. I shifted all external blame towards internal blame, and I accepted the responsibility to change in order to overcome that adversity.
When I switched to gamedev, that mindset persevered, allowing me to focus on what matters.

@Lambdanaut That's interesting, thanks for sharing. You're coming from a very different place. I feel like I mostly blame myself for not solving my technical issues, but maybe I'm just making up reasons.

Sign in to participate in the conversation
Merveilles

Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.