Programming thread

My question is, is there a resource like learncpp.com but for Python (or C#)?
I've found that the official tutorial is pretty decent (not learncpp-tier by any stretch, and I'll explain why in a sec): https://docs.python.org/3/tutorial/index.html

When I try googling for "Python tutorial" or "learn C#" all I find is:
  • Advertisements for paid courses.
Yep. As someone who has been involved in this grift professionally at various points, that's absolutely one of the differences between Python and other languages. Once you've got something like Python that has metastasized to inject itself into basically every problem domain ever (and it doesn't hurt that the bar to learning to use the language 'productively' is lower than the floor), then there are perverse incentives to shit out garbage-level "Intro to Python for <field/discipline>" courses and workshops because those end up being ridiculously lucrative income streams.
 
My question is, is there a resource like learncpp.com but for Python (or C#)?
I learned these languages so long ago that any resources I could point you to would be massively out of date but I have a couple of ideas:

Firstly, Rosetta Code is a good resource if you would like to see a series of programs written in languages you know next to languages you don't. Conveniently you will see C# and C++ next to each other thanks to the similar names. For example here is one showing how to format dates in C# next to C++.

I haven't learned a new language since it came out but ChatGPT is very good at explaining basic programs and the ideas behind them. It makes shit up when it doesn't know the answer but it excels at translating ideas from one programming language to another and also really hard to search for terms like "what does MyObject?.MyVariable mean in C#?"

It all depends on how you learn however but as programming is a practical subject, I suggest programming as soon as possible. If you'd like a fun project, you could consider developing one of Squidi's game designs perhaps.
 
Now I want to progress and do something in a very high level language, maybe like C# or Python, and I'm leaning towards Python.
The “classic” introduction is Dive Into Python, though it’s been a very long time since I completed it so I can’t say for certain how appropriate it is for your skill level.

David Beazley wrote up the Python course he teaches in-person — Beazley is very highly regarded in the Python community, and his Python Cookbook is perhaps the only O’Reilly Python book worth buying (avoid Learning Python and Programming Python unless you are an immortal with insomnia). It’s aimed at people with some programming experience already:
Students of this course are usually professional scientists, engineers, and programmers who already have experience in at least one other programming language. No prior knowledge of Python is required, but knowledge of common programming topics is assumed. Most participants find the course challenging–even if they’ve already been doing a bit of Python programming.
 
  • Informative
Reactions: Monuklear
Programming has been full of trannies and weirdos forever. You're literally not a normal, well-adjusted person if you do this for a living.
Maybe that was the case in the 80's, but the entry threshold has lowered significantly since then, so the vast majority of programmers nowadays are normies(and I'm not implying that it's a bad thing).
At my workplace most programmers are 30-40 year old men with wives and children.
 
Maybe that was the case in the 80's, but the entry threshold has lowered significantly since then, so the vast majority of programmers nowadays are normies(and I'm not implying that it's a bad thing).
At my workplace most programmers are 30-40 year old men with wives and children.
Even back in the '70s, most programmers were just normal people who were a bit nerdy and liked computers a lot. There were even actual female programmers back in the '50s and '60s. The troon menace only came about recently due to the massive influx of socially isolated (not awkward, but flat out socially stunted) porn addicted autists into the field, which is a lot due to the prevalence of the Internet in the last couple decades.
 
I'll just say be really careful with dosage and diminishing returns land... as well as determining when you actually need it (eg: crunch vs not).

A cursory reading through reddit reveals that they have the same attitude towards adderall as any other potentially life altering drug. UH EXCUSE ME, HOW DO YOU KNOW ITS NOT SAFE TO EAT THESE LIKE BREAKFAST CEREAL ARE YOU A PHD MEDICAL PROFESSIONAL? That's enough of a red flag for me to stay away.
What I will say is that if you do full-time on addy for like a year, it can be alright. Especially if you stick to the low doses. But my experience is that you start to really feel your mind unraveling beyond that. I did about five years of daily adderall and by the end of it, my brain felt constantly worn out even when I was medicated.

Also if you're a coomer, then be especially careful because otherwise you can easily end up jerking off all day instead of doing productive things.
 
  • Feels
Reactions: std::string
What I will say is that if you do full-time on addy for like a year, it can be alright. Especially if you stick to the low doses. But my experience is that you start to really feel your mind unraveling beyond that. I did about five years of daily adderall and by the end of it, my brain felt constantly worn out even when I was medicated.
Long-term use also can likely cause the cardiac remodeling that leads to heart failure.

I assume the life expectancy for a lot of Redditors is about 45 considering, y'lnow, sedentary lifestyle, they walk around in a constant state of being angry at everything, they're popping Addy like candy, doing keto, shit like that.
 
  • Like
Reactions: Fcret and Wonderman
Lombok should be built-in to Java and I'm tired of pretending it shouldn't.
 
  • Feels
Reactions: ditto
Go with C#. It is so easy to pick up and a breeze to work with. The MSDN (Microsoft Developer Network) has great documentation and should be all you need to get going. Even the tooltip help in Visual Studio Community will keep you moving fluently. I'd just start with the tutorials here https://dotnet.microsoft.com/en-us/learn/csharp until I've got a feel for the documentation and pick up to my own pace.
I wouldn't go so far as to say its a breeze to work with. As with any language it has its share of quirks. I'll never understand what they were thinking when they decided not to include any kind of built in pagination despite having a built in repeater. You'd think those things would frequently go hand in hand. But yeah its a decent language to work with most of the time
 
I've finally been accepted to the CoPilotX beta. It's world's ahead of regular CoPilot or ChatGPT, as it understands in the context of your codebase. I'm honestly scared for my professional future if things keep improving. What are your thoughts on it?

I wouldn't trust the Stack Overflow surveys to be truly representative. With that said, probably Javascript or Python.
Surveys tend to overvalue Python because it doesn't take into account the scientific or data scientist skills its users generally bring to the table.
What happens is that amphetamines cause a massive flood of dopamine. The problem with dopamine is that it can cause feedback loops in the brain, and if left unchecked, those feedback loops burn themselves right into the neural network and take over, causing massive dysfunction. This is one of the theoretical bases for schizophrenia.
he will become extremely angry in response
I've just restarted ritalin for my untreated ADHD. I must be mindful, I seem to never want to back down from an argument.
 
I've finally been accepted to the CoPilotX beta. It's world's ahead of regular CoPilot or ChatGPT, as it understands in the context of your codebase. I'm honestly scared for my professional future if things keep improving. What are your thoughts on it?
It better be worlds ahead because copilot in its current form fucking sucks. People fight me on this saying it's so predictive and amazing. Thats true IF YOURE IN A TOY PROJECT. Every large professional codebase I have used it in it just immediately shits itself and dies. Everything it suggests is not only wrong but usually completely irrelevant. I had to finally just turn it off because its accuracy rate was approaching 0%.

The only reason I'm keeping the service is because I write a lot of small python scripts for text processing and it CAN help with that.

I think the problem is that it can't deal with novel types. It doesn't understand the semantics of the objects it's using. Only the verbatim code that came before it. If you use COMPLETELY STOCK TYPES that everyone else uses it can do okay. However, that is absolutely never the case in large professional projects.
 
I think the problem is that it can't deal with novel types. It doesn't understand the semantics of the objects it's using. Only the verbatim code that came before it. If you use COMPLETELY STOCK TYPES that everyone else uses it can do okay. However, that is absolutely never the case in large professional projects.
Predictive text models don't understand anything about what's going on. It's like autocomplete on steroids.

Now, when you have a use case where you're like oh this could probably be solved by someone who just learned to copy paste shit from Stack Overflow, it's pretty damn good at that.
 
Predictive text models don't understand anything about what's going on. It's like autocomplete on steroids.

Now, when you have a use case where you're like oh this could probably be solved by someone who just learned to copy paste shit from Stack Overflow, it's pretty damn good at that.
I get the impression that if you're not literally copying verbatim from Stack Overflow, it doesn't work so well. It really can't innovate very well, even innovating minor differences.

This isn't the same thing as copilot, so perhaps copilot innovates better, but this is an interesting article about someone trying to use GPT-4 to write minor variations on pretty well documented algorithms.

It's interesting to observe how the AI tries to adapt standard stack overflow pathfinding solutions to fit the specifics of the problem, and it almost gets there. It seems to analyze the problem correctly. But it keeps throwing incorrect solutions at the wall.

And really, that last bit is worrying. Instead of giving up, it just keeps tossing broken solutions at the wall.

Imagine some pajeets trying to AI away some kind of app permissions logic that has some subtleties, and then suddenly some system has a huge gaping security hole.

I guess pajeets would've been doing that already, but this might make it worse?
 
I guess pajeets would've been doing that already, but this might make it worse?
I'm certain it will get worse considering Pajeet likes to be as lazy as he possibly can while still looking incredibly productive. I'm morbidly curious as to where this goes.

Actually what I hadn't thought about before is that CoPilot is trained on GitHub repos right? So what happens if it vomits out some GPLv3 code into your codebase?
 
Actually what I hadn't thought about before is that CoPilot is trained on GitHub repos right? So what happens if it vomits out some GPLv3 code into your codebase?
No one really knows since whether or not AI generated output from copyrighted training data constitutes a derived work is an open legal question.

My gut feeling based on the current political climate and the few preliminary legal musings I've read is that this sort of stuff will probably end up qualifying as derived works and therefore Microsoft would be guilty of attempting FOSS license laundering (and therefore, every company which uses copilot in production for proprietary applications could potentially be guilty of violating the GPL).

Should be interesting to see play out. Especially since you can't just modify LLMs to fix the problem - they'd have to train completely new models from scratch (at great expense) while making sure to explicitly not include any IP-encumbered code. And not just GPL code but also stuff like MIT and 2+-clause BSD which require reproduction of the original license and attribution (something copilot is not capable of doing atm). So much code would need to be eliminated from its training set actually that it might not even be useful anymore.
 
Last edited:
I get the impression that if you're not literally copying verbatim from Stack Overflow, it doesn't work so well. It really can't innovate very well, even innovating minor differences.

This isn't the same thing as copilot, so perhaps copilot innovates better, but this is an interesting article about someone trying to use GPT-4 to write minor variations on pretty well documented algorithms.

It's interesting to observe how the AI tries to adapt standard stack overflow pathfinding solutions to fit the specifics of the problem, and it almost gets there. It seems to analyze the problem correctly. But it keeps throwing incorrect solutions at the wall.

And really, that last bit is worrying. Instead of giving up, it just keeps tossing broken solutions at the wall.

Imagine some pajeets trying to AI away some kind of app permissions logic that has some subtleties, and then suddenly some system has a huge gaping security hole.

I guess pajeets would've been doing that already, but this might make it worse?
The most worrying thing isnt even pajeets but the non-technical middle managers that hired them. Almost universally if they see something run once and it works they go "ship it" and can't wrap their brains around the fact that it's catastrophically wrong. They'll just keep hiring more and more pajeets to use copilot and firing more of their competent staff until it's too late.
 
Back