Beep Boop Bip
[Return] [Entire Thread] [Last 50 posts] [First 100 posts]
Posting mode: Reply
Subject   (reply to 1547)
BB Code
File URL
Embed   Help
Password  (for post and file deletion)
  • Supported file types are: BMP, C, CPP, CSS, EPUB, FLAC, FLV, GIF, JPG, OGG, PDF, PNG, PSD, RAR, TORRENT, TXT, WEBM, ZIP
  • Maximum file size allowed is 10000 KB.
  • Images greater than 260x260 pixels will be thumbnailed.
  • Currently 1018 unique user posts.
  • board catalog

File 150448609042.jpg - (110.47KB , 1280x720 , mpv-shot0028.jpg )
1547 No. 1547 [Edit]
It doesn't matter if you're a beginner or Dennis Ritchie, come here to talk about what you are doing, your favorite language and all that stuff.
I've been learning python because c++ was too hard for me (I'm sorry nenecchi I failed to you), reached OOP and it feels weird compared to the latter one, anyway I never got it completely.
332 posts omitted. Last 50 shown. Expand all images
>> No. 3126 [Edit]
File 16747740489.png - (38.21KB , 1000x1000 , triangle cube.png )
A "cube" made out of triangles, using the ray tracer. Had to figure out the math for this myself, so that was tricky.
>> No. 3128 [Edit]
File 167496547757.png - (601.66KB , 400x400 , test.png )
The last thing I'll be doing with the raytracer for now. Parses a simple obj file and makes triangles accordingly. It's very slow, hence the small image dimensions.

edit: with randomly colored triangles to make it look a lot more distinct.
>> No. 3151 [Edit]
File 167750613615.jpg - (299.49KB , 1080x1339 , lisp_indentation.jpg )
Any of you who write Lisp at all should look into Parinfer, it does most of the work for you in terms of writing and balancing parens, so writing Lisp becomes similar to writing Python:

Also, if you've ever installed Emacs and didn't like it, I encourage you to give either Doom Emacs or Spacemacs a try. I installed Doom Emacs a week ago and now I wish I had done so much sooner.
>> No. 3154 [Edit]
Learning commodore BASIC as of now. I don't know much about computahs, but it is really neat seeing what you can do the more you understand the language. Seeing how a computer thinks and works is fascinating the deeper you go.

I'm using an original VIC-20 to learn on, but if I ever decide to try out some techniques on a C64 or Amiga, I'll stick to an emulator. My VIC has some weird bugs that can sometimes get in the way, but I don't think I would've originally been interested in learning any of this stuff if I wasn't handling an actual vintage computer.

Now I want to build my own PC and learn python.
>> No. 3155 [Edit]
To the anon here who became yet another victim of the filter: your ban has been lifted.
>> No. 3175 [Edit]
Programming Commodore machines is fun because you have such a raw unfiltered access to every component of the machine, although I have to say that I actually preferred writing Assembly because Basic has a lot of weird limitations
>> No. 3186 [Edit]
6502 Assembly in particular is fun and easy to learn. Then you can waste time writing stupid shit like multipliers :P
>> No. 3206 [Edit]
Does web dev count as programming?
>> No. 3207 [Edit]
Yes. Especially anything back-end.
>> No. 3208 [Edit]
I got into programming by making userscripts for a bunch of websites/imageboards I visit. Although I only have experience with javascript I recently signed up for an actual programming course done in my area that teaches Java/.NET. I never touched any of those languages but I hope I can pass their test and maybe get some experience with employable languages. Especially Java since it appears to be used everywhere
>> No. 3209 [Edit]
I'm a uni student. Java was in fact used in my introductory class. It'll serve you decently. Keep applying your knowledge to personal projects, and if you don't already, start using git. You don't need to be an expert on git, but you should know how to make a repo and commit to it.
>> No. 3210 [Edit]
Sure, javascript is definitely a complete programming language. Although I feel front-end is more about piling on random JS frameworks and introducing complexity for no reason, but if you stick close to vanilla javascript then much of what you learn should be applicable else where.

I guess you could use js for backend or non-web things as well, but I don't really know why you'd want to when there are better options available.
>> No. 3211 [Edit]
I do know basic git. In fact I maintain a personal repo on gitlab with my dotfiles+userscripts and a public repo on github which I hope it might one day land me a proper job interview. WFH would be ideal but from what I read the industry is slowly reverting to office work
I actually didn't use a single framework ever. I much prefer learning what I need with vanilla javascript. Also while working on some personal projects I came to the realization that I prefer backend over frontend
>> No. 3212 [Edit]
>with my dotfiles+userscripts and a public repo on github which I hope it might one day land me a proper job interview
It won't really, I've never seen an interviewer even care enough to check out the projects the interviewee has worked on.
>WFH would be ideal but from what I read the industry is slowly reverting to office work
Depends on size of company. Smaller companies still have it, but most of the ones with names you've heard of are in the processes of getting rid of it.
>> No. 3213 [Edit]
>most of the ones with names you've heard of are in the processes of getting rid of it.
Why is that?
>> No. 3214 [Edit]
A combination of "big data" suggesting workers are "less productive" when working at home, and middle managers having a complex where they need to physically watch over you, and needing to say they have meetings with you to appease their own bosses.
>> No. 3215 [Edit]
If they had any data they would share it to justify their actions, the fact that they haven't means I really suspect they don't have data showing as such. Most engineers can do fine with remote work (they really better be able to, considering even in the pre-2019 ages 95% of interactions were always over chat/email anyway). Maybe the one group of engineers impacted is interns, since I guess having someone physically present to guide them through non-trivial things might be beneficial, but they can adapt easily.

The main reasons as I see it are as follows (not ordered in any way):

1) It's a "power move". Notice that none of the RTO restrictions ever seem to apply to executives. They just don’t like the idea of the plebs getting to enjoy a leisurely life without wageslaving hard.

2) Down from the exec level, most middle-managers need to be in the office to make it look like they get things done. If everything is RTO, then they don't really have anything to do.

3) They've invested a lot in real-estate, and don't want those to be a loss. There's probably also pressure from local governments to force RTO to stimulate local spending.

4) It's a way to do layoffs and cost cutting without explicitly doing them. Also consider that amenities were slashing during the initial move to wfh, and they have not (and probably won't be) restored.

5) It's posturing and a way to show investors they're doing something.
>> No. 3216 [Edit]
I'm working full time in a field i don't really like.
I've just enrolled in a remote CS bachelor, it's going to take me 3 years to get the diploma. So i'll continue working full time + studying.

Tbh, i don't know if combining the two is possible. CS people, do you have any tips or good books to optimize the learning in the few hours of studying i'll have per week ?
>> No. 3217 [Edit]
Working full time plus studying is technically possible if you are smart and already know most of the material, but if you don't know the material and the curriculum is fairly rigorous then it's probably not a good idea. If you only have a few hours per week not working, how will you do the assigned problem-sets? Or is a remate CS bachelor different than normal university courses in that they don't offer problem-sets/projects to do?
>> No. 3218 [Edit]
I don't really know what courses the bachelor program you enrolled in has and what the studies look like, so take everything I say with a grain of salt.
But if it has a significant amount of stuff like software development projects, I would say pick it up as a hobby if you haven't yet.
Just start writing software for yourself and figure stuff out as you go.
That will allow you to grasp the concepts behind it without the pressure of having to deliver no matter what and you can then apply these concepts pretty well in any practical assignment. Same goes for other technical things like networking etc.
It might sound cliche but try to find some fun in it, as that will turn what is essentially a second job into possibly even something akin to recreation.
As for the more theory heavy stuff, I can't really help unfortunately, i just had to grind through it.

I apologize if what I have written is just a load of trivial bullshit, but the one thing I took away from studying, is that the best way to learn technology is playing around with it, not really studying it in your classical academic way. I never really read a CS book for any other reason than curiosity.
In any case, I wish you success.
>> No. 3219 [Edit]
I guess you probably meant to reply to GP, not me.

>technology is playing around with it, not really studying it in your classical academic way
Depends on the field. Software _engineering_ is probably best learned by playing around with it, but actual CS theory is best learned in the classical academic way. The wide availability of resources on the internet means that studying in the "classical" way isn't limited to textbooks though, you can watch lecture videos, and discover better/more-targeted resources.
>> No. 3220 [Edit]
I thought that the curriculum being in 3 years, i won't have to deal with heavy things from the start and difficulty will go in crescendo.
I hope my assumption is right, otherwise the entreprise is doomed.

I can dedicate 1 hour per week day and then the full week-end to studying. Maybe i'll begin right now with some MOOCS to cover the basics.

The curriculum i'm getting in has the basic stuff, algorithms, procedural and OO programming, networking. In the third year, there are some courses on AI, Big Data, and how languages are made.

I'm checking the Helsinki university basic and advanced programming MOOCs, to not be a complete noob.
And yeah, there will be some project and problems for exams.
>> No. 3221 [Edit]
File 168681409045.jpg - (74.18KB , 696x604 , Imouto_at_computer.jpg )
>helsinki university basic
Are you are Euro? I'm asking since as far as I am aware Euro universities tend to be almost wholly decided on the final exam, with less 'busy work' than you would get at an American or Canadian university, like weekly "homework" assignments for example. You might have a bit more free time as a Euro, but again there is a bit more stress for finals.

I'm in the US and I'm at uni right now, albeit for engineering, but I've had a few programming classes. These were all in-person classes but from my experience you typically will have 1 assignment a week, although in the upper level classes you may be given more time for harder assignments, but these were entry level classes.

From my experience the courses will generally deal with 1 computer language, sometimes two if they are somewhat similar like C++ and C#, but it is typically going to be a C class, a python class, or a java class, but again this has just been my experience. I did not take any upper level CS courses but I imagine by your 3rd semester you will probably start to encounter most of the difficult material that will begin to take up time. As other anons said, I can't speak for the program you are enrolled in but typically the first 2-3 semesters the difficult classes are going to be calculus and physics.
Typically you will start out with either an intro to a language like C or java or python, where for example with C, you will probably get to doing structures by the very end, or you will start right away with doing basic algorithms and structures then you will go on to do more advanced algorithms and more advanced structures.
Software engineering is typically a different degree from CS in my experience and CS stuff is more focused on algorithms and structures, with the upper level courses getting into how an OS works, languages work, how computer networks function and stuff like that so more scientific stuff.
I think a good starting place if you wanna get ahead is to try and see what languages your school is going to be using for these beginning classes and get familiar with coding in them.

Here are some resources I have bookmarked. These are all from Brown, and I think there may be some more that I haven't seen.
>> No. 3222 [Edit]
>with less 'busy work' than you would get at an American or Canadian university, like weekly "homework"
Good American universities don't provide "busywork" as "homework" (and it's almost always called psets, not homework). In fact probably the most memorable parts of courses were solving the problem sets, if you have a good professor then they will usually be challenging enough that you will do most of your actual learning while solving them.

Similarly at least in good US universities, there's no course dedicated to teaching you a given language. It's simply expected that e.g. you will pick up Go in time for your first project related to compsec, or you will pick up C++ for your course in computer graphics. The one exception may be architecture course, where they probably will hand-hold you through learning MIPS or I guess RISC-V these days.

I only say this to point out that variation between colleges/universities in the US, let alone US and elsewhere is too broad to be able to give any specific advice tailored to your situation.

> the first 2-3 semesters the difficult classes are going to be calculus and physics.
Usually the hardest courses for most people doing CS are actually the discrete math courses.

>Software engineering is typically a different degree from CS in my experience
This is true, it varies between univerisites whether or not the degree is in CS, EE/CS, or software engineering.

>I think a good starting place if you wanna get ahead is to try and see what languages your school is going to be using for these beginning classes and get familiar with coding in them.
This is good advice, since it's an open secret that most people come into the CS courses already knowing the language, and if you don't you are at a disadvantage. E.g. if a course in algorithms is taught using Java, you should be able to spend your time on the algorithms portion, not the "learning java" portion, or you will not have a good time.
>> No. 3223 [Edit]
It seems that these days even high schools are offering 'coding courses' so I suppose a familiarity with it is even more so expected than before. But having looked at the curriculum of other larger schools in the state each schools curriculum varies quite a bit, with some being much more rigorous than others. Learning the java, python, and C/C++ would be the best places to start since most schools seem to use one of them.
>problem sets
Some classes have those but they aren't typically assigned as a grade to do, but I agree it is helpful to do them. I was just referring to my experience where we had assignments to do, which was just applying the course content which was nice, but there was also some online pearson 'problems' which were more of a chore to do than anything else, especially since it was very picky about answers. I do think they got rid of it though.
>too broad to give specific advice
That is true.
>discrete math courses
I suppose this is another difference between universities. Where I am you are required to complete the first 2 calculus courses, covering up to Taylor series, before you can take linear algebra or similar discrete classes.
>> No. 3224 [Edit]
Thanks I'll look into those links.
Yes, i'm euro.

I think it's a CS curriculum since it's dealing with algorithm, networks, OS, languages, database, etc.
However there is little to no maths. The curriculum chief stated that the heavy maths is not really needed and students forget about it anyway when they graduate.

How true is that ? idk. You think math is necessary ? if so, i'll have to work on my free time one some uni maths textbook.
>> No. 3225 [Edit]
File 168684267351.jpg - (7.20MB , 4000x2667 , c0f5a97437e5e6fd1b7531785bfadf22.jpg )
At my uni, the first two core classes, Intro and Data Structures, are taught in Java, the next, Computer Architecture, is taught in C with a little bit of x86 at the end. If you want to go in depth with assembly, I think that would be Computer Architecture II, which is an elective. The last core class, algorithms, has no programming and is entirely theoretical. I thankfully had a pretty lenient professor for that one.

Everything else is an elective, which you have to take 6 of. Networking, database management, computer graphics, machine learning, etc. You can pick whatever. Software engineering is not a distinct major, but a bunch of electives you take in succession.

Post edited on 15th Jun 2023, 8:25am
>> No. 3226 [Edit]
Not him, but analyzing algorithms requires some discrete math, basic calculus, and familiarity with proofs. One probably won't be implementing them for work, however, and one can understand which, say, sorting algorithm is more appropriate for a situation on qualitative standards alone.
>> No. 3253 [Edit]
I like working in Scala, but I might be too low IQ to truly appreciate it.
>> No. 3254 [Edit]
Cute GPU-san.
>> No. 3255 [Edit]
I find the reactions to (an expansive library that promotes a functional-style of programming in Go) to be pretty amusing. Even if one finds any deviation from The One True Way in Go to be distasteful, you have to admit it's pretty neat to see someone pushing a language like Go to this extent; instead it's treated like blasphemy by the gophers. I'll have to remember this next time I work with Go.
>> No. 3256 [Edit]
To me the main value of Go is in the standard library. No other language comes with its own standalone TLS implementation. In terms of everything else, I'd rather be writing C though.
>> No. 3257 [Edit]
>I'd rather be writing C though
I can't stand C solely because of how much of a pain in the ass string manipulation is.
>> No. 3258 [Edit]
I'm learning Ziglings and I highly recommend it.
>> No. 3268 [Edit]
that's really neat. Here's something similar but with ClojureScript instead of Zig:
>> No. 3274 [Edit]
It's a shame Purescript doesn't have a well-maintained and usable native backend, as I find it nicer to program in than Haskell. There's been a few attempts, but nothing's stuck.
>> No. 3288 [Edit]
File 170019336829.png - (160.62KB , 996x836 , fizzbuzz_clojure.png )
Show me your strongest fizzbuzz
>> No. 3289 [Edit]
The only thing I can imagine that would be of similar "quality," would be FizzBuzz: Enterprise Edition.
>> No. 3293 [Edit]
File 170136970580.jpg - (391.96KB , 1875x2344 , cd0ce15af2e6d7e8154665698330edec.jpg )
I cаme up with а pretty clever wаy of implementing the toggаble thumbnаil thаt's on tc аnd most other imаgeboаrds, without using jаvаscript․

The "common" wаy of doing thаt is using а checkbox input аnd the CSS "content" property․ The problem with this method, is thаt pseudo-elements аre not аdded to the DOM, meаning you cаn't right click the imаge аnd sаve it from the context menu․

Using аn ifrаme for this like:
<body> <а href="lаrge․jpg"><img src="thumbnаil․jpg"/></а> </body>

doesn't work becаuse ifrаmes cаn't аdjust their size to their content, аnd HTML documents cаn't even define their own size․ BUT, SVG cаn․ SVG аlso supports some HTML-like feаtures, such аs imаges аnd links․ When аn HTML object element hаs SVG аs its dаtа, the object element will аctuаlly tаke on its size(side note, the img element doesn't support "nested imаges" within SVG)․ So аll together you cаn hаve this:
<body> <object dаtа="thumbnаil․svg"></object> </body>

<svg width="160" height="120"> <а href="lаrge․svg"> <imаge href="thumbnаil․jpg"/> </а> </svg>

<svg width="800" height="600"> <а href="thumbnаil․svg"> <imаge href="lаrge․jpg"/> </а> </svg>

On pаper this works․ Unfortunаtely, it doesn't in Firefox․ The object's size does not properly аdjust аfter the link is clicked inside the thumbnаil SVG․ It does work in Chrome, but imаges included inside SVG cаn't be аccessed by the context menu, so there's no аdvаntаge to the CSS "content" method․ I filed а bug though, so mаybe this will be fixed․
>> No. 3314 [Edit]
File 170471450912.jpg - (117.83KB , 1024x1024 , sdg1697994032744385.jpg )
I just found this really nice interactive tutorial on how to use Datalog, which is an alternative to SQL (although it's actually older than SQL):
>> No. 3344 [Edit]
I'm still using CoffeeScript in 2024 AD, and I'm loving it.
>> No. 3346 [Edit]
Coq was finally renamed. There's not much to be said since it was an inevitability, and anything else would be better suited for /tat/.
>> No. 3354 [Edit]
File 170881422985.png - (101.81KB , 400x400 , comiket103.png )
I've looked into >>/ot/40374 again, and realized a few things. First of all, there is a standardized way of including metadata in pretty much every image format including PNG, XMP, an XML-based sort of "container" for meta-data. You can place EXIF tags in XMP, or Dublin Core tags, which seem more appropriate.

One way to add this information to a file, is by writing some XMP, and using Exiftool to add it. I did this to the attached image.
<?xpacket begin=''> <x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='Image::ExifTool 12.77'> <rdf:RDF xmlns:rdf=''> <rdf:Description rdf:about='' xmlns:dc=''> <dc:subject> <rdf:Bag> <rdf:li>3girls</rdf:li> <rdf:li>^_^</rdf:li> <rdf:li>cat</rdf:li> <rdf:li>comiket_103</rdf:li> </rdf:Bag> </dc:subject> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end='w'?>

In the command line:
exiftool -tagsfromfile .\tags.xmp -all:all .\comiket103.png -overwrite_original

You can download this image from tc, and that data should still be there. So how does this make things easier? How about a meta-data injector? A tool which using filenames and reverse image search, can get image tags from a booru, and add them to files you already have by using a similar, automated process. The other missing piece to this, is adding the ability for windows explorer to read and write this XMP information. Filemeta exists, but that doesn't seem to utilize XMP.

Post edited on 24th Feb 2024, 2:38pm
>> No. 3366 [Edit]
File 170961808627.jpg - (2.05MB , 1200x1699 , 667e618eb7735ad3b5fb2a9e9b6d55cb.jpg )
Update: I wrote something that works with Gelbooru and JPEG files

Seems this is the easy part, which is a shame, but it's still great being able to search images by description. I wrote it with WSL and Windows in mind, but there's no reason it wouldn't work without WSL. As for Linux, I have no idea what the situation is there with metadata support.

edit: released an exe, so you don't need to compile it.

Post edited on 5th Mar 2024, 2:56pm
>> No. 3369 [Edit]
File 171012035649.jpg - (838.53KB , 970x730 , a7b19a565d4130ad194c8b6be72be1f34ed0d0c0.jpg )
Anything that has to do with tags should be capable of being handled by the filesystem via extended attributes such that filetype specific solutions aren't neccesary, though admittedly I don't know of a good filesystem for such. If I only value attribute-ability then in regards to windows, btrfs exists, but it supposedly functions very differently structurally and I'm not knowledgeable enough regarding to say whether it's suitable. Similarly, though not relevant, you may also find haiku's filesystem (BeFS) interesting.

Nonetheless, still pretty cool to have the ability to have access to this regardless of filesystem in a way I imagine is portable between such. Should pair well with software that operates on a file based on what folder it is downloaded to. Also, what's the reason(s) for the compatibility limitations?
>> No. 3370 [Edit]
File 171012294366.png - (22.01KB , 400x400 , bdf0ea87651b291f06b5b11134e13f86.png )
>extended attributes such that filetype specific solutions aren't neccesary
NTFS did support this, and using Filemeta, you can enable it for any file type. If I cared to, maybe I could have my tag scrapper work with that NTFS specific system. That's not the avenue I want to take though, because I really care about portability.

>what's the reason(s) for the compatibility limitations?
XMP was a fairly new standard when Windows added limited support for it. I'm not sure XMP itself supported PNG and GIF at the time. Since then, Microsoft hasn't bothered to expand compatibility, which I chalk up to laziness. I think the path to add it lies within the WIC API. I don't know C++ though, so that's been my priority.

Post edited on 10th Mar 2024, 7:09pm
>> No. 3371 [Edit]
File 171027336575.png - (220.85KB , 1888x1360 , usebashinstead.png )
Would it actually be better to write a bash script instead? I'm not too familiar with bash, but my assumption is that aside from not being cross-platform, that route would be harder to maintain and less extensible. Maybe I'm wrong about all of that though.
>> No. 3372 [Edit]
Learning Haskell from scratch is easier than conquering the beast known as FP Scala. Yeah, Haskell's operator soup can be confusing at first, but at least the language itself, even with the most commonly used GHC extensions, is rather slim. Scala, on the other the hand, is truly a multi-paradigm language with an impressive type system, and the commonly used IO libraries are bloated beasts. Powerful, but might be too much for my small brain.
>> No. 3430 [Edit]
File 171668094969.png - (78.38KB , 1704x1016 , wip.png )
I've been working on a port of Saya no Uta to Renpy. I found an unencrypted, pre-patched English version of the 2009 release, and am now working on a translation script of whatever it is they used.

I'll still have to do some things manually, but this should make it feasible within a reasonable time-span. For the first time ever, Mac and Linux users will have a native version. This obviously isn't legal, but I'm not worried about the legal team of Nitro+
>> No. 3431 [Edit]
File 17166968543.png - (60.13KB , 400x400 , 42d6c045511b61f0cc032c79c79f8b51.png )
I've got to say, Renpy's imperative approach, as opposed to a markup one, has made this more difficult than it has to be.
<voice name="瑶" class="瑶" src="voice/6/001405"> <I></I>"I Feel rEAlLy bad ABoUT YOur PareNTs&.<k><voice name="瑶" class="瑶" src="voice/6/001405_2"> BUt yoU'RE Not aLONE&. you HAve KoJi&, aND OMi&, anD&.&.&.<k><voice name="瑶" class="瑶" src="voice/6/001405_3"> you HAVe ME&."

which is all in one paragraph, becomes
voice 'audio/voice/6/001405' txt `"I Feel rEAlLy bad ABoUT YOur PareNTs.` voice 'audio/voice/6/001405_2' extend ` BUt yoU'RE Not aLONE. you HAve KoJi, aND OMi, anD...` voice 'audio/voice/6/001405_3' extend `you HAVe ME."`

If you're making something from scratch, this would probably be less annoying, but I feel like it would encourage a less dynamic, more stilted-approach. I get they're going for a "readable" screen-play vibe, but visual novels aren't screenplays, they're computer programs.

Post edited on 25th May 2024, 9:17pm
[Return] [Entire Thread] [Last 50 posts] [First 100 posts]

View catalog

Delete post []
Report post

[Home] [Manage]

[ Rules ] [ an / foe / ma / mp3 / vg / vn ] [ cr / fig / navi ] [ mai / ot / so / tat ] [ arc / ddl / irc / lol / ns / pic ] [ home ]