[-] potterman28wxcv@beehaw.org 7 points 8 months ago* (last edited 8 months ago)

When I first got daily access to internet (back in 2009), I got curious about how programs are built. Like, if I wanted to make my own application, what should I do?

I googled something along that direction and it linked me to a famous french website for learning programming (site du zéro) where I learnt C language.

After the course I made a 2D Snake game with SDL2. How naive was I to think I could write it in one go without testing anything in between! I scrapped the 1st attempt because it was a disaster and randomly inserting/removing * was not helping.

I started again from scratch, testing in smaller steps, and I really liked it. After a couple of weeks I had my Snake game working! I was so proud of it that I showed it to my mom. I do not have the source files anymore but I still have the binary somewhere

Afterwards I sticked with it and continued programming - I was back in school without much access to internet so I programmed on my TI-83+ instead. Eventually I pursued computer science studies then a PhD.. It got me hooked real good.

[-] potterman28wxcv@beehaw.org 7 points 8 months ago* (last edited 8 months ago)

Yes, getting into a new project is hard. Even when you do know the languages and frameworks it's still hard because you have to get into the mini ecosystem that the developers of that project built. In companies there is usually an expected amount of time (days? weeks? Months? Varies on the project) where a new developer is not really expected to do anything major, just getting used to the project.

I do not know if you are professional or hobbyist. But coding takes a lot of time, a lot of it is spent on just figuring out how you will code this or that feature ; then another bunch of time is spent debugging ; and finally, yet another bunch of time is spent integrating your new feature. That's why it's a whole job, and that's also why you need a ton of free time to do this as a hobbyist.

But the good news is that once you spent that upfront time to get into the project, you can code more efficiently (that is, get right to the features you want to make) and you will also spend a little bit less time getting into other projects because although projects are different, there is always some level of organization that remains similar. The more advanced you become, the quicker you can get into a "production" state where you can code right away thanks to spending less time figuring out how things work.

[-] potterman28wxcv@beehaw.org 7 points 9 months ago

I love Ruby since I got introduced to it. The syntax is great and you can do many things in a simple manner.

Before that, Python was my go-to language for scripting but now I cannot stand the syntax anymore. I dislike the lack of braces and forced indent.

[-] potterman28wxcv@beehaw.org 7 points 9 months ago

Oh, it most definitely is scummy. It's no news that Tinder does not care about people well-beings. Actually, they want you to get stuck to the platform as long as you can; if everyone was finding their partner after a week their platform would not be profitable anymore.

[-] potterman28wxcv@beehaw.org 7 points 9 months ago

I don't know of any software platform where that would not happen.

Even with a text-only platform people can still post URLs to unsafe content.

I think OP is referring to some kind of automated scanner but I'm not sure there are publicly available ones. I guess using them would come at a cost - either computational or $$. And even so, there can be false positives so you would probably still have to check the report anyway someday.

[-] potterman28wxcv@beehaw.org 8 points 10 months ago

But the application does not ask you whether or not you find the woman attractive

It asks you whether you want to "smash" her. The same word could be used for a sex doll recommendation application. That's objectification

[-] potterman28wxcv@beehaw.org 7 points 10 months ago

I really don't like this idea that "men should figure out what women find attractive". This goes against the idea of being natural - it puts useless pressure on men who are not able to find a partner, as the implicit message is really "You could not find a partner because you don't know what women find attractive".

I mean, if I were to say the same sentence but with the roles reversed "women should figure out what men find attractive" you would most probably call me a sexist. See the problem?

Here is what all men should know : attractiveness is a matter of taste. As long as the guy is healthy and respectful, eventually he will find someone. Knowing that, he should get confident and not be afraid to propose dates.

[-] potterman28wxcv@beehaw.org 7 points 10 months ago

Even if the commit message is concise, there is a difference between what the patch does on a technical level and what the end user will see as a result.

IMO the solution is to link each commit to an issue or a ticket - some high-level description of the feature the commit implements - but there still has to be someone who makes the effort of making sure each commit is linked to a ticket and who nags the devs when they forget to do so..

[-] potterman28wxcv@beehaw.org 6 points 10 months ago

Do you know why is that so?

[-] potterman28wxcv@beehaw.org 7 points 10 months ago

I highly disagree with the 2nd point

I hate RTS because there are so much going on everywhere at the same time that I just can't handle it. You gotta master your production while scouting while repelling raids while strategizing to see what kind of army the opponent is building while exploring the tech tree and.. damn how did they just send an army of 50 fellas??

MOBAs allow me to fully focus on the moment and whatever I'm doing instead of being perpetually late on the actions that need doing

[-] potterman28wxcv@beehaw.org 6 points 10 months ago* (last edited 10 months ago)

We need to choose something which most closely represents the data.

Why do you need to do that? You do not have to choose the optimal memory model to code a Tic Tac Toe game.

A Vec works fine, and is also simple to understand (so it is maintainable).

If you invent your own complex data structure for the Tic Tac Toe you trade maintainability for.. what gain?

How to build a grid whose orientation does not matter?

The orientation is how you iterate on your grid. If you iterate from first element to last element on X-axis, you have the "normal" orientation. If you iterate from last to first, you have the Y-symmetrical orientation.

A 2D array is already a grid whose orientation does not matter. No need to over-complexify this.

If you want to be picky, you could say that you want a grid with optimal performance. Meaning that your data should be contiguous (ideally, your data should be in the same cache line to prevent cache misses).

If you start playing with complex data structures with lots of pointer indirections and such, your performance will go down, your code will be more complex to understand, and will (certainly) be bigger in memory. You will lose in both maintainability, performance and size.

A single vector of 9 elements is enough, really.

[-] potterman28wxcv@beehaw.org 6 points 11 months ago

Inventory management is one aspect of Diablo 1 that I liked a lot. If you played MP, you could either transfer your gear to mules.. But if you wanted to play "as the game is intended", you had very limited space to carry between games and had to choose which items you want to carry with you to the next game. I did a playthrough through the 3 difficulties with Warrior a few years ago and I loved having to make these choices.

view more: ‹ prev next ›

potterman28wxcv

joined 11 months ago