mastodon.gamedev.place is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon server focused on game development and related topics.

Server stats:

5.6K
active users

#debug

3 posts3 participants0 posts today

Why people design a new #ProgrammingLanguage?

There are tons of good reasons of course. Some does that for fun or for curiosity, some for political or educational reasons, some to address shortcomings faced with existing one, either in specific use case or in general.

To me, at least at the conscious level, it's completely a political issue.

I see how programming is a new political force (so much that I actively used it to fight #BigTech in Italy) and I see how people who cannot read (aka #debug) or write (aka #programing), are doomed to becomes second class citizens in a #cybernetic society.

I don't want this to happen to my daughters, so I want to teach them how to program and debug.

BUT mainstream programming languages are weird, full of accidental complexity and with over-complicated semantics.

As a nerd who can programs in most of them, I tend to get fun in the abstractions and details of, say, a #Haskell or an homoiconic macro in a #Lisp.

But while they are fun to a person grown (and selected to fit) within such a primitive computing environment, they are inheritely excluding people who cannot spend decades to grasp their subtle intricacies.

And how you can teach such languages to kids?

Sure they can learn and understand any programming language construct way better of an average adult, but at a first glance all they will only see is glibberish!

And while some will be fascinated by such esoteric language that can be used to create games, worlds and agents that serve their will (just like I was when I was a kid), most will find that complicated and thus boring.

On the other hand a language that is explicit and with simple semantics (such as say #Oberon) will seem verbose and boring to a professional programmer.

I love the simple clarity of a #snake implementation like this https://github.com/tmartiro/voc-snake/blob/main/Snake.Mod whose complexity is almost just the complexity of the task at hand.

And while I see little improvements I could add to such language to further simplify it's syntax and semantics, when I try to do so, I end with something that is less readable than the original, despite syntax and semantics being simpler (as in less rules and no exceptions or incoherence).

It was pointed out by @anzu@items.minimals.org: while I want to make the language easy to read and simple to understand, I subconsciously try to address the issues I faced in my ~25 years as a polyglot programmer.
And apparently I can't resist such impulse, like if I cannot escape my experience.

It's sad.

It makes me think of how the phonetic alphabet was invented by people who cannot read or write but were exposed to hierogliphs, and think that creating a democratic programming language is beyond my ability because of how my mind has been blent from the existing one.

@informatica@feddit.it @programmazione@feddit.it
@technology@lemmy.world
@programming_languages@programming.dev
Snake written in VOC using Raylib. Contribute to tmartiro/voc-snake development by creating an account on GitHub.
GitHubvoc-snake/Snake.Mod at main · tmartiro/voc-snakeSnake written in VOC using Raylib. Contribute to tmartiro/voc-snake development by creating an account on GitHub.

I grew up in Asia, so I smile and nod quietly, whenever I'm contented and happy 😄, or disconcerted and alarmed 😅, or anything in between 😏.

One of the few situations in which I frown and shake my head vigorously is when I have to #debug a pernicious, little C pointer error that threatens to derail the entire project, at the 11th hour. 😖

Such is the spice of #programming #thuglife.... 😎

Trying to #debug a playback issue on my #Roku and it is annoying the hell out of me. I have a #tvheadend #server (CPU only) feeding a live #MPEG2 video #stream to a #Jellyfin server with a #Nvidia #Quadro #K2200 for #hardware acceleration. When hardware #encoding is turned on, the Roku can play transcoded rendered movie files but not the live stream. When hardware encoding is turned off (decoding still on), the Roku can play transcoded movie files and the stream. #WTF why one and not the other?

Had an issue yesterday with an #Asterisk install not seeing a key I have for connections to another via #IAX
Debugged it for a few hours after work and gave up. Went to bed and dreamt a possible solution. Woke up, went back to work and tried said solution and that was it!

I simply forgot to install openssl-dev and compile Asterisk --with-ssl ..

Say I am debugging an #ethernet project on the #ice40 #fpga of pico-ice board. I want to know the contents of some registers down in my design (which destination MAC address my #hardware tried to transmit). I don't want to use manufacturer specific ILAs and don't want to hand route a bunch of debug signals to my top level for external #debug equipment I don't have.

In PipelineC just assign to a globally visible #UART debug probe wire:
github.com/JulianKemmerer/Pipe

Continued thread

More debugging stories #bug #bugs #debug

Todays second weird bug required a bit more diving into the code.

Until I started seeing hash map dropping keys unexpectedly. (Dump the keys, see the size of the iterator is going down after some transformations that shouldn't have changed the size).

In the end, go down into the Hash and the Equals implementation.

Start using a debugger, things that should not compare equals compare equals.

In the end, the following line was wrong, (copy paste issue).

let other_location = self.get_location();

I should have written unit tests, that would have caught it.

TIL debug profiles and container filesystems. If you've ever wished you could exec into a distroless image you've probably come across the kubectl debug command. The profile switch, allows you to modify your security context whilst debugging a container. The "sysadmin" profile lets you examine the filesystem of the container being debugged. Recall that PID 1 is the entrypoint binary of the running container. If you don't have the sysadmin profile enabled, you won't be able to inspect /proc/1/root.

🏷️ #debug #kubernetes #security #til

Continued thread

update:

  • lsusb recognizes it
  • there is no openxr runtime set; no matter what I try (even though I tried to install monado or alternatively pressed the "set steamvr as default openvr runtime" button; neither works
  • monado runs correctly now
  • steamvr logs suggest that the occulus is actually recognizes at a lower level; no matter that the gui says that this is not the case
  • .... but apparently I need some oculus drivers in .local/share/Steam/steamapps/common/SteamVR/drivers/oculus/bin/linux64/ which do not exist
Today, I thought something light would help in these... interesting times. Initially created as a banter, this small project inspired by a 1949 patent by Peter Ganine turned out to also be a good help for developers who forgot their debugging buddy at home ! The detailed project is available on the blog ( https://learngraspshow.eu/emporium/bubbles-and-code/), with the full 3D model page here (https://tinyurl.com/5ys5zxsf)

#3d #art #design #render #digitalart #3dart #rendering #b3d #blender #blender3dArt #rubberDuck #dev #debug #rubberducking #Duck #modelling #PeterGanine