Programming thread

  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account
I know old VHDL, is there any difference between 2008 and the former standard (90 something)?
Is it as big as SystemVerilog is compared to Verilog?
I know SystemVerilog 2012/2017 well enough, par except the SVA bullshit because nothing really supports it anyway, except Cadence.
A lot of companies (i.e. Antmicro) seem to transition to Cocotb.

I know that this question may sound stupid but the support for VHDL (as much as I like it) is dwindling as SV gained traction. Iirc mostly Academia (can tell fron experience) seems to like it the most.
2008 is a general industry standard, but you're right SV is picking up a lot of traction. Doesn't hurt to know both.
 
How do you find motivation for personal projects whilst employed?

Speaking just for myself, programming is my personal project; I do the least amount of time possible at the day job (unrelated, different field, left corporate coding a while ago because the culture is anathema to me) to keep my rent paid. It keeps me hungry and my living slim, not too many luxuries (IE distractions IE things that I would otherwise binge and would increase my dopamine tolerance) which gives me a natural way to see programming as desirable and fun, both because I see it as a path to greater things and it's not competing with flashy new indulgences, which is always a good motivator.

In the opposite position though, I can only speculate, but I'd say if you like programming, try to find things that prey specifically on your curiosity, because if the day job is a bit rote, something that keeps the light in your eyes should be a fairly natural thing to want to run to.
 
Last edited:
  1. Did you take another major than CompSci? I'm asking this because my current Pain in the Ass is that I have little to do with Mathematics in my programming (besides boolean algebra), so much so I feel like I'm regressing. Right now I'm doing things closer to EE to than to just Programming (SystemVerilog) and I kinda feel that.
  2. How do you find motivation for personal projects whilst employed?
Before CS I also did some time in biotech and architecture. I also worked in various industrial jobs. After 5 years of dev work, a few years out from where I would have been fired for refusing the cell therapy Big Pharma was marketing as a vaccine, I quit to go back to industrial work (think trades, only I don't have trades certs, I can just do most of them from experience). 8 years or so out from /that/, I'm back into theoretical CS, have finally started learning to think like a Lisp coder, et cetera.

Quitting CS was how I found motivation for personal projects, but me trying to juggle my personal projects while a programmer was also something that got me into trouble as a professional programmer. That ought to sound weird, but I was employed at a Microsoft shop and I kept trying to use Free Software to solve problems, like writing ASPX.NET front-end code in vim. Now there's balance, and I'm not making what I used to as a union programmer, but I am content with my little niche and enjoying myself.

Getting close to a doxable PL here but this picture is of my latest exploration into CS theory. Waiting on this book to finally make it to my place. Ironically, I don't think I'll be using Shen much for what I plan to do with this book, but we'll see how that all pans out. Today's Shen is a flat superset of Scheme anyhow.

9603003000018_500x.webp
 
>A literal Turing machine
kino
What is it about? I understand your point that I should ideally balance my work time between passion projects and my job responsibilities.
Yeah it's doable, but you only get to pick and choose if you work in a research institute or other workplace which doesn't treat you like a slave.

By the way, @Jotch do you have any tips for if I ever wanted to get into Analog or Mixed-Design ICs? I'm asking here how to essentially learn Electrical Engineering, potentially by oneself. I *could* get a degree but some US schools outright refuse Graduates.
 
you only get to pick and choose if you work in a research institute
You also get to pick and choose if your dayjob isn't in the industry. That was kind of my point. That's the path I've chosen that led me to balance.

I didn't even pay attention to the fact that there was a literal Turing machine on the cover. I was just posting the book. I expect it'll be on its topic. There's a landing page for the book here: https://shenlanguage.org/lpc.html You can get all of the code in the book for free. I haven't engaged with any of it more than vaguely grasping that the book is kind of the raison-d'etre of Shen: it's a language designed for the author's theory experiments. I read how Tarver thinks about things, and he's more than synthetic enough in mentalism for me to expect that the book will be well-suited for me. I guess I've been doing this long enough that I have a sixth sense for this sort of thing.
 
By the way, @Jotch do you have any tips for if I ever wanted to get into Analog or Mixed-Design ICs? I'm asking here how to essentially learn Electrical Engineering, potentially by oneself. I *could* get a degree but some US schools outright refuse Graduates.
Prefer Analog Devices over Texas Instruments, don't be afraid to email the manufacturer with questions.
The datasheets usually have suggeated applications, you can learn a lot.
Particularly with analog stuff there is often a certain board layout you should always use. There really isn't much to say for analog stuff other than keep power noise low.

Mixed mode is the most interesting, you will want to keep digital and analog parts apart from eachother. Digital lines are very noisy and mess with analog systems a lot.
Keep them aparated from eachother, give them separate power lines that are individually isolated to the board power, same for grounding.
Put board ground in between analog and digital zones.

I'm more of a PLD guy though, so I can't speak much more to board design.
 
There's literally decades of programming knowledge on the Internet
Personally, ChatGPT has become more useful than Google, Yandex, or Bing.

I can describe some autistic abstract problem before asking it to return links to what it considers relevant.
I have no clue what happened to the Internet but I can’t easily find information on forums, git issues, or reddit like I could years ago.

The links are so nice.
I will probably pay for my laziness in poor Internet searching skills one day.

Edit: Recommend search engines/methodologies for looking up code/random “this is probably fucked, is it common?” stuffs. Thx
 
Last edited:
I have no clue what happened to the Internet but I can’t easily find information on forums, git issues, or reddit like I could years ago.
Ironically ML algos happen, and google uses it for everything which degrade search results if you actual knew how to use keywords.
Also SEO.
 
Edit: Recommend search engines/methodologies for looking up code/random “this is probably fucked, is it common?” stuffs. Thx
I would say by far my most commonly used technique is to put important phrases that I want searched for exactly intact in "double quotes" like so (although sometimes if nothing useful is coming up I'll refrain from using it). Sometimes I'll also use other techniques like site: and filetype:. Look into articles about Google techniques for power users or whatever. Also I mainly use DuckDuckGo and Yandex for piracy but just be aware that Google is not your only option.
 
Last edited:
I have no clue what happened to the Internet but I can’t easily find information on forums, git issues, or reddit like I could years ago.
This is definitely noticeable, anything programming-related is far more likely to turn up some jeet's AI-generated blog or niggerhell websites like Geeksforgeeks and friends

That being said I wouldn't trust AI to produce better results. It's being fed those same first-page garbage sites and consequently will recommend them. You really just have to learn how to use search operators and have a more specific query to get to the good shit. There's been a good number of times where I've spent a while slowly refining my search until finally I got some autist's personal website or even a fucking Usenet archive that had exactly what I was looking for and then some. Also, just cut out the search engine if you can and go directly to a forum you know or the project's tracker or whatever and use the on-site search
 
1. Did you take another major than CompSci? I'm asking this because my current Pain in the Ass is that I have little to do with Mathematics in my programming (besides boolean algebra), so much so I feel like I'm regressing. Right now I'm doing things closer to EE to than to just Programming (SystemVerilog) and I kinda feel that.
Pure mathematics, including graduate studies. Ironically, most of my research work ended up being closer to applied mathematics, since applied is what gets all of the interest and funding. Despite my degrees, I have always thought of myself more as an Applied Scientist (read: big nerd).
Higher mathematics is all about generalizing and abstracting; once you get the hang of such abstract thinking, you can easily apply it in reverse to quickly grasp concepts in other areas of science. Like, if you are good with calculus, then you can handle working with most dynamic systems pretty intuitively.

2. How do you find motivation for personal projects whilst employed?
Autistic passion. You have to love the process or be heavily invested in the result (e.g. writing some scraper to archive stuff for personal use).
 
>have good project idea
>know what I want from it
>don't know where to start
How do you guys typically get over that initial hump of "what do I do first"? I have a bunch of pieces that I need to create, and I know a at a high level what I want, but I'm getting stuck on implementation details
 
>have good project idea
>know what I want from it
>don't know where to start
How do you guys typically get over that initial hump of "what do I do first"?
write whatever
first just mash the keyboard
then int main() {
then mash the keyboard again
then start writing the most basic bitch implementation with a simple struct and a few printfs
 
>have good project idea
>know what I want from it
>don't know where to start
How do you guys typically get over that initial hump of "what do I do first"? I have a bunch of pieces that I need to create, and I know a at a high level what I want, but I'm getting stuck on implementation details
system diagram on paper.
identify the input and output desired and draw all the systems required to go from A to B
 
>have good project idea
>know what I want from it
>don't know where to start
How do you guys typically get over that initial hump of "what do I do first"? I have a bunch of pieces that I need to create, and I know a at a high level what I want, but I'm getting stuck on implementation details
Just Do It - Shia LaBeouf

A potentially sub-optimal solution that you can see how to implement is better than the perfect solution that you cannot. Pick one of those pieces and draft a rough outline, keep doing that and you'll have a working prototype before you know it. Focus on the details later.

Even if you end up throwing the prototype away, you will have learned something (hopefully) and "Prototype #2" will be better.
 
Just Do It - Shia LaBeouf

A potentially sub-optimal solution that you can see how to implement is better than the perfect solution that you cannot. Pick one of those pieces and draft a rough outline, keep doing that and you'll have a working prototype before you know it. Focus on the details later.

Even if you end up throwing the prototype away, you will have learned something (hopefully) and "Prototype #2" will be better.
My problem is that I'm so anal about my own DX that I try to make every internal API function work well, and I end up frontloading a lot of work before even getting the problem solved
 
Back
Top Bottom