help-circle
rss
Advice needed, son wants to learn how to program
Hi all, My 8 year old is asking if he can learn how to program. He has asked specifically if I could set him up with a ‘programming kit with lessons’ for a Christmas present. I’d like to support this, and it seems like it’s not a transient interest as he’s been all over scratch, and using things like minecraft commands for the last year. I have an old (pre 2017) MacBook Air I can set up for this. How do I / what would you advise I set up for him, to a) keep him safe online (he’s 8!) and b) give him the tools he needs in a structured way. I am not a programmer. I know enough bash/shell and basic unix stuff to be dangerous and I was a front end dev a very long time ago, but I wouldn’t call myself a programmer and don’t know what concepts he needs to learn first. Hugely appreciate any advice, thanks. Edit: So I posted this then had a busy family day and came back to so many comments! I will methodically go through these all, thanks so much. A couple of things on resources: he has expressed interest in 3D worlds and I noticed comments on engines, but wonder if that’s too advanced? Totally agree with the short feedback loop rather than projects that take days. He has an iPad 6 and I’m happy to pop a Linux distro on the Air, so certainly open to that. So many links to research. Hugely grateful.
fedilink


What is memory safety
this article brought me back to http://www.pl-enthusiast.net/2014/07/21/memory-safety/
fedilink




This thread is frustrating. Everyone seems more interested in nitpicking the specifics of what OP is saying and are ignoring that a forum sends you your password *(not an automatically generated one)* in an email on registration.
fedilink





Bruno HTTP client, offline alternative to Postman/Insomnia
insomnia just enshittified itself and requires cloud login like postman, *and* force upgrades you from the old version even if you disable updates. this blocked me at work today. this client looks great, wanted to boost it here in case anyone else got screwed by Insomnia this morning.
fedilink

Many of the Humble Tech Book Bundles seem like they offer little to no value. But this one looks like a good value of you're interested in any one of the books available. 2 days 22 hours remaining at the time this was posted.
fedilink


What do y’all think about mailing lists and IRC as sole communication channels?
Say you want to contribute to a project and find out the only way to do so is by discussing the issue on IRC or the mailing list, then submitting the patch per email.
fedilink

https://programming.dev/post/3666732 Change log for upcoming Lemmy version 0.19.0 I am just reposting this from the original post: https://lemmy.ml/post/5711722. It’s interesting to see this for the software we’re all using and it makes me want to learn a bit more about the architecture. Quite a few user-facing features and some backend improvements. For example: > Outgoing Federation Queue The federation queue has been rewritten to be much more performant and reliable. This is irrelevant for client developers, but admins should look out for potential federation problems. If you run multiple Lemmy backends for horizontal scaling, be sure to read the updated documentation and set the new configuration parameters. The Troubleshooting section has information about how to find out the state of the federation queues. > https://github.com/LemmyNet/lemmy/pull/3605
fedilink





This is considered as the beginning of general-purpose programming. ( Image credits : NASA and MIT_CSAIL )
fedilink


For a while I've wanted to work through this book in Rust, and while I could find some finished (and often further refined) implementations of `lox` in Rust, I was not able to find an equivalent step-by-step snapshot of code at the end of each exercise of the book in Rust. I decided to try doing the first exercise myself and record the progress to hopefully help others in the future. The code in the video is not (intended to be) the most idiomatic Rust, as I was trying to stick as closely to the source material in Java as possible, but I think that in a way this has its own advantages for people who are interested in learning more about Rust.
fedilink




Looking for an accelerated numerical computing library for .NET
Hi! I'm looking for a C# library for matrix operations and preferably some linear algebra or optimization routines. Basically a NumPy/SciPy or PyTorch. Ideally there'd be support for various backends (e.g. CPU, CUDA, OpenCL) for operations where possible. As far as I can tell, there's [Math.NET Numerics](https://numerics.mathdotnet.com/), [Numpy.NET](https://github.com/SciSharp/Numpy.NET) (which binds to Python's numpy), and [NumSharp](https://github.com/SciSharp/NumSharp) (which hasn't had commits since 2021), which seem to fit the bill mostly, though none are accelerated. Otherwise, there are some libraries I've forgotten that seem to specifically target CUDA, which is too selective for my purpose. Maybe it was [Hybridizer](http://www.altimesh.com/get-started/), which seems like its own compiler, which I'm not sure would work for me either. There's also [ComputeSharp](https://github.com/Sergio0694/ComputeSharp) which lets you write shaders directly in C#, though targets DirectX if I understand well. The closest thing I've found is [ILGPU](https://github.com/m4rs-mt/ILGPU), which seems brilliant since it JIT compiles kernels to CPU, CUDA, and OpenCL. The problem is I believe I'd need to write my own operations and kernels and essentially implement my own matrix compute library, though there seems to be [some work on it](https://github.com/m4rs-mt/ILGPU/pull/1023), so maybe what I'm looking for is supported out of the box, minus optimization algorithms and so on. Basically, does anyone have any pointers?
fedilink

Description from the site: ``` Mistral AI team is proud to release Mistral 7B, the most powerful language model for its size to date. Mistral 7B in short Mistral 7B is a 7.3B parameter model that: Outperforms Llama 2 13B on all benchmarks Outperforms Llama 1 34B on many benchmarks Approaches CodeLlama 7B performance on code, while remaining good at English tasks Uses Grouped-query attention (GQA) for faster inference Uses Sliding Window Attention (SWA) to handle longer sequences at smaller cost We’re releasing Mistral 7B under the Apache 2.0 license, it can be used without restrictions. Download it and use it anywhere (including locally) with our reference implementation Deploy it on any cloud (AWS/GCP/Azure), using vLLM inference server and skypilot Use it on HuggingFace Mistral 7B is easy to fine-tune on any task. As a demonstration, we’re providing a model fine-tuned for chat, which outperforms Llama 2 13B chat. ```
fedilink

Is anyone working on a personal assistant using RAG and LLMs?
A personal chatbot that can search through your notes and saved documents sounds like an obvious application of LLMs, but for some reason I can't find such a project. Are there any in the works?
fedilink

Software Disenchantment
Recently re-discovered this gem of a blog post, written in 2018 by Nikita Propokov, about his disenchantment with the state of modern software. Do you think it's still relevant today (perhaps more/less so than it was when it was written)?
fedilink

Is MSVC worth it?
I currently maintain a legacy C+ app that runs on x86/x86_64/armhf linux, all 4 android archs and x86/x86_64 windows. The linux compilation phase takes 1m, whereas on windows (using MinGW) it takes 10m. It's not the end of the world, but would the MS compiler be faster? Better?
fedilink



Arena Allocator Tricks and Tips
> Over the past year I’ve refined my approach to arena allocation. With practice, it’s effective, simple, and fast; typically as easy to use as garbage collection but without the costs. Depending on need, an allocator can weigh just 7–25 lines of code — perfect when lacking a runtime. With the core details of my own technique settled, now is a good time to document and share lessons learned. This is certainly not the only way to approach arena allocation, but these are practices I’ve worked out to simplify programs and reduce mistakes. > An arena is a memory buffer and an offset into that buffer, initially zero. To allocate an object, grab a pointer at the offset, advance the offset by the size of the object, and return the pointer. There’s a little more to it, such as ensuring alignment and availability. We’ll get to that. Objects are not freed individually. Instead, groups of allocations are freed at once by restoring the offset to an earlier value. Without individual lifetimes, you don’t need to write destructors, nor do your programs need to walk data structures at run time to take them apart. You also no longer need to worry about memory leaks.
fedilink

How to store user’s access tokens/API keys without hashing them?
In an API I have there's a requirement to use an authentication method other than OAuth2 or any kind of token generation which requires making an extra HTTP call. With this in mind there's this https://www.xml.com/pub/a/2003/12/17/dive.html I've only stored passwords as hashes and used functions like [`password_verify`](https://www.php.net/manual/en/function.password-verify.php) to know the user sent the proper credentials without actually knowing the password stored in DB. WSSE requires to encrypt with SHA1 the credentials being sent, which means the API needs to retrieve the password in plain text to recreate the digest and compare it to the one sent by the user. So, how should I be storing this password if the code needs it to recreate the hash? Should I have something like a master password and store them encrypted instead of hashed? --- Most of the information I've found about WSSE is very very old, and some implementations have it marked as deprecated, do you know any other type of standard authentication where the user can generate the token instead of having to make an extra HTTP call?
fedilink

What is this format specifier?
What is %.2f? Why is it not just %f? Is there some additional calculation happening? The half function already does all the calculations including splitting the bill, so I'm not sure what %.2f is. (Btw why is this code not formatting correctly in lemmy?) ```// Calculate your half of a restaurant bill #include #include float half(float bill, float tax, int tip); int main(void) { float bill_amount = get_float("Bill before tax and tip: "); float tax_percent = get_float("Sale Tax Percent: "); int tip_percent = get_int("Tip percent: "); printf("You will owe $%.2f each!\n", half(bill_amount, tax_percent, tip_percent)); } // TODO: Complete the function float half(float bill, float tax, int tip) { bill += (bill * (tax / 100.0)); bill += (bill * (tip / 100.0)); bill /= 2; return bill; } ```
fedilink

Weaknesses of agile and Scrum
A quick rant about weaknesses of agile
fedilink

cross-posted from: https://sh.itjust.works/post/5850736 > This is the resource I've been looking for. I'm working my way through the book but it gets in the weeds *really* early. It's all fun and games and then chapter 4 just hits like a brick wall. Amos does a tremendous job explaining the *why* behind things, in a more wheels to the pavement way.
fedilink

TLS Notary is in alpha
It uses MPC and ZK to prove some data from a server (that uses TLS) is authentic given some request. One of the simple demos is proving you received a DM from someone on twitter, without sharing your session token or login credentials with the other party. Another idea is proving you know some exploit (think sql injection) without revealing how you did it. Or proving you purchased some item off a website so you can review it on a neutral platform (amazon reviews but without amazon being able to manipulate the votes)
fedilink

About the posts asking for career / college advice.
Shouldn't the mods remove those posts and tell them to post at !cs_career_questions@programming.dev ? I think it's a good way to organize the community and grow the ones with less engagement.
fedilink

    Create a post

    Welcome to the main community in programming.dev! Feel free to post anything relating to the instance here

    People will guide you in the replies to relevant communities for that kind of content to help get you communities in the instance to then join and make future posts in

    We ask that if you do a help request please add [help] to the start of the post to help differentiate it from the rest of the posts until we get a flair system in

    Hope you enjoy the instance!

    • 1 user online
    • 85 users / day
    • 534 users / week
    • 1.42K users / month
    • 2.34K users / 6 months
    • 1 subscriber
    • 400 Posts
    • 6.18K Comments
    • Modlog
    programming.dev
    A collection of programming communities

    Welcome Programmers!

    programming.dev is a collection of programming communities aimed at topics relevant to software engineers, hackers, hardware and software enthusiasts, script kiddies, cryptographers, researchers, roboticists, and more.

    The site is primarily english with some communities in other languages. Feel free to click on one of the sections below to see some information on it.

    Post Sorts

    Post Sorts

    Posts in our site can be viewed using the local sort and posts from all connected sites (lemmy.world, beehaw.org, lemm.ee, etc.) can be viewed using the all sort.

    The active sort will show posts that are getting comment activity while the hot sort will get posts that are getting more upvotes. New will show new posts and top will show the top posts for the time frame you select (last hour, last 6 hours, etc.)


    Finding Communities

    Finding Communities

    To find communities in our instance you can check out our community list

    For finding communities within the wider fediverse including all connected sites you can use one of these sites:

    • lemmyverse (easy way to search and browse all communities)
    • sub.rehab (shows alternative communities to some subreddits)
    • feddit (a way to search for communities)

    Community Creation

    Community Creation

    Communities in our instance are created from our community request zone. If you have an idea for a community that fits our instance that hasnt been made already feel free to create a post for it there. Communities will be considered for creation if theres enough interest in the idea shown by people upvoting it


    Rules

    User Rules

    • Dangerous content on the instance and federated instances including phishing, spamming, brigading, unmarked nsfw, doxing, etc. is not allowed and subject to be handled by the mods or admins
    • Hate speech is not allowed on the instance or in instances federated with it. This includes remarks directed at sex, gender, ethnicity, orientation, disabilities, etc…
    • Other content is up to the discretion of the mods of the community its posted in

    Community Rules

    • If a community has no dedicated mods it will be managed by instance admins until a mod team is found
    • If a community mod team has gone inactive and no longer maintains a community new mods may be added

    Federation Rules

    • Any federated communities that have shown they will not enforce our user rules while their content shows up on our feeds will have their community removed from our instance
    • Instances that continually encourage this type of behavior or are built to only do this type of behavior are subject to be defederated
    • If an instance is not being managed (due to owners being gone, etc.) it is subject to be defederated
    • Certain content may be hidden from our all feed including politics and bot spam. (Not currently implemented due to lemmy limitations but will be eventually). This means it won’t show up in all but you can still view it and subscribe to the communities to have it show in your subscribed feed

    Bot Rules

    • Bots interacting in our communities must follow our Programming.dev bot guidelines (see the bot guidelines section below)

    Bot Guidelines

    Bot Guidelines

    1. Mark Bots as Bots Bot accounts should be marked that they are a bot using the checkbox in the user settings. This includes any automation in an account (if you automate part of your personal account, put what the automation is in your bio so people know)
    2. Put contact info The owner of the bot and some way to contact them must be in the bot’s bio (unless its an automated personal account, in that case the account itself it the way to contact)
    3. Use mentions as prefix If a bot has commands it should use its mention as a prefix. (This will allow different bots to use the same commands without interfering with each other)
    4. Dont spam Bots should not spam posts or comments. (If a bot command has been used its fine to do a response but dont drown out non bot posts in the local new sort.) Certain cases are unavoidable such as if you want to get a bot posting weekly threads in different communities at the same time but in those cases please contact me first to get it approved
    5. Allow mods to opt in Bots participating in a community should be opt in so communities can choose what bots they want. If you want a bot to be allowed in a community please contact the moderators of that community first. EXCEPTION: If a bot is deemed to be a well behaving bot that brings net good to the instance it can override this rule as long as it has been approved by an admin. This can include things such as a tldr bot, remindme bot, link fixer bot, piped link converter bot, etc. If a bot has overriden rule 5 with this exception community moderators should still be able to opt out of the bot

    Donations

    Donations

    If you would like to help support the server you can donate on @snowe’s GitHub Sponsors page. We will be setting up a different method to donate later, but for now, we’ve been getting asked a ton for how to donate.

    —Upti

    Discord / Matrix / Mastodon

    Other zones

    We are on various other platforms for communication outside the site. For real time chat there is both discord and matrix and we have a mastodon account for microblogging where things such as instance downtimes are announced.


    TOTP Bug

    TOTP Bug

    Currently there is a major bug with TOTP. Please see the discord #user-help page or the matrix for more information.





    $n^4 + 1/2$

    console.log("hello world")