Is this a Nut?
Hahaha that’s what frontend devs think
Hahah, well as a primarily backend developer, that's what I think as well.
“Just make this button work”
If that button doesn't work, that sounds like a frontend problem to me.. ;)
But yea, as you mentioned, it probably comes down to experience. As the meme from this post depicts. When I dabble in frontend and make a WinForm for my devtool, people just look at me and are like "Uhhh, can you make it better?"
No sir, clearly I can not. And I have no idea what you mean with "better".
Yea, fair enough. My point was mostly: backend requirements are usually at least objective. "Json xml comes in", "CSV goes out by email", "The request must be processed under 100 ms", "API should not return 400 on feetpics" - these are still mostly objective requirements.
Frontend requirements can be very subjective "The user should have a great user experience with the frontend"
4.2 (5 ratings)
5 ratings... doesn't really seems like anyone is actually using this. The $20/user/month is probably a hail mary of "Lets throw this product out there, and if just one company with like 100 users accidentally enables this thing, we're good"
Backend Requirements: "When x,y goes in, I want x+y to come out!" - Okay
Frontend Requirements: "Well it needs to be more user-friendly, and have this rockstar wow effect" - Yea wtf are you even talking about? You want me to add random glitter explosions, because I found a script for that, that's pretty 'wow effect' right?
and, perhaps more critically, some Chinese GPU makers from utilizing CUDA code with translation layers.
Like that ever deterred China from violating copyright claims to trademarks. Maybe if they're huge companies that want to export, but if they're just making in-country chips, especially if it's useful for the Chinese government, these companies are not going to change anything based on some license warning
It depends on the language, since you mentioned you don't want to do manual testing -
Start with a mono-repo, as in, 1 repo where you add every other repo as a git submodule
Then, every time something changes you run that repo though the build server, and validate that it at least compiles.
If it compiles, you can go a step further, build something that detects changes, for example by parsing the syntax tree of everything changed, then check the syntax tree of the entire project which other methods / objects might be affected. In dotnet you'd do this with a Roslyn Analyzer
What if you do it ironically? Like calling yourself a Code Ninja Jedi 10x Rockstar 🚀?
I think I couple of those points come down to the tech-lead to write a "Definition of Done"
1 - This is useful for junior members or new members to know what to expect. For example, "Definition of Done" would include that a new function should be documented, it should be refactored into clean code by the code standards, it should be tested by QA, there should be unittests covering the function, the function should be released to production to be marked as done - etc
2 - When giving managers that don't know anything about coding an estimation - either by you, or by someone in your team - they can take the Definition of Done" as a reference point. If a manager asks how long something will take, you don't just consider "Oh, I guess I can build this in a couple of days". Yea ok sure, you can build it to meet the managers minimal requirements for the function to kinda work but its messy code and untested - so if you keep in mind that there are loads of other meta-things to do besides just building code, you can pretty much double your initial estimation
Otherwise you just accumulate more and more technical dept, and at some point your "just build it" estimation gets inflated because for every change you have to touch lots of 1000 line files, figure out what broke by the changes, fix that, see what failed now, etc etc
And it would have been better in the long run if you would have spend more time on it while you were working on the function
Do you mean their code is already setup with some kind of output to terminal that you can use to add a unit test into as well?
I don’t even recall what I was messing with awhile back, I think it was Python, but adding a simple print test didn’t work. I have no idea how they were redirecting print(), but that was a wall I didn’t get past at the time.
Yea, probably not every language has a concept of unittests, but basically test code.
Like if you have a calculator, there would be a test (outside of the real project) of like
If Calculator.Calculate(2 + 2) then assert outcome = 4
That way - if lets say the calculator only does +
operations - you could still copy that test line, and create a new test of
If Calculator.Calculate(5 * 5) then assert outcome = 25
Your test will fail initially, but you can just run through it in a debugger, step into the code, figure out where it's most appropriate to add a *
operator function, and then implement it, and see your test success.
Other benefit of that is that if you submit your change as PR, with the test the repo maintainer doesn't have to determine whether your code actually works just by looks, or actually running the calculator, your test proves you've added something useful that works (and you didn't break the existing tests)
That stuff seems like a language on top of a language for me, and when it errors I get really lost.
If you're just programming for yourself without the intent to submit it for a PR, you can just throw away the linter file. But I mentioned it was good to have in a project, because if there were multiple people working on it, all with their own style, the code can become a mess quite fast
I get sick of something that annoys me and want to go in and fix the issue despite being completely unqualified, but naive enough to try.
Well, I mean, that's basically all the things right? You start completely unqualified, mess around for a while, and after a while you're them more-qualified next time...
With stuff like Marlin, I seem to like the hardware side of things.
Just messing around with stuff you like is a good way to learn - though in my experience doing anything with hardware is way more difficult than just plain software. If you have to interface with hardware its very often pretty obscure stuff, like sending the correct hardware instructions to a driver, or to just "hardware pins" even... Like trying to start modifying a driver as a kind of starter project doesn't sound like something I'd recommend
Generally mostly by cyclomatic complexity:
- How big are the methods overall
- Do methods have a somewhat single responsibility
- How is the structure, is everything inner-connected and calling each other, or are there some levels of orchestration?
- Do they have any basic unittests, so that if I want to add anything, I can copypaste some test with an entrypoint close to my modifation to see how things are going
- Bonus: they actually have linter configuration in their project, and consistent commonly used style guidelines
If the code-structure itself is good, but the formatting is bad, I can generally just run the code though a linter that fixes all the formatting. That makes it easier to use, but probably not something I'd actually contribute PRs to
How do you learn to spot these situations before diving down the rabbit hole? Or, to put it another way, what advice would you give yourself at this stage of the learning curve?
Probably some kind of metric of "If I open this code in an IDE, and add my modification, how long will it take before I can find a suitable entrypoint, and how long before I can test my changes" - if it's like half a day of debugging and diagnostics before I even can get started trying to change anything, it's seems a bit tedious
Edit: Though also, how much time is this going to save you if you do implement it? If it saves you weeks of work once you have this feature, but it takes a couple of days, I suppose it's worth going though some tedious stuff.
But then again: I'd also check: are there other similar libraries with "higher scoring" "changeability metrics"
So in your specific case:
I wanted to modify Merlin 3d printer firmware
Is there any test with a mocked 3d printer to test this, or is this a case of compiling a custom framework, installing it on your actual printer, potentially bricking it if the framework is broken - etc etc
Ok, sure. So in a tech race, if energy is a bottleneck - and we'd be pouring $7tn into tech here - don't you think some of the improvements would be to Power usage effectiveness (PUE) - or a better Compute per Power Ratio?
What benefits to “AI supremacy” are there?
I wasn't saying there was any, I was saying there are benefits to the race towards it.
In the sense of - If you could pick any subject that world governments would be in a war about - "the first to the moon", "the first nuclear" or "first hydrogen bomb", or "the best tank" - or "the fastest stealth air-bomber"
I think if you picked a "tech war" (AI in this case) - Practically a race of who could build the lowest nm fabs, fastest hardware, and best algorithms - at least you end up with innovations that are useful
For all our sakes, pray he doesn’t get it
It doesn't really go into why not.
If governments are going to be pouring money into something, I'd prefer it to be in the tech industry.
Imagine a cold-war / Oppenheimer situation where all the governments are scared that America / Russia / UAE will reach AI supremacy before {{we}} do? Instead of dumping all the moneyz into Lockheed Martin or Raytheon for better pew pew machines - we dump it into better semiconductor machinery, hardware advancements, and other stuff we need for this AI craze.
In the end we might not have a useful AI, but at least we've made progression in other things that are useful
Well @ @TheGrandNagus and @SSUPII - I think a lot of Firefox users are power users. And a lot of the non-power Firefox users, like my friends and family, they're only using Firefox because I recommended them to use it, and I installed all the appropriate extensions to optimize their browser experience.
So if Firefox alienates the power users - who are left? I'm gonna move on to Waterfox or Librewolf, but they are even more next-level obscure browsers. My non-tech friends know about Chrome, Edge, and Firefox, so I can convince them to use one of those... But I kinda doubt I can get them to use Librewolf. If I tell them Firefox sucks now too, they'll probably default to chrome
If AI integration is to happen [...], then this to me seems to be the best way to do it.
Well, to me the best way to do it would be for Mozilla to focus on being the best bare-bone, extendable browser.
Then - if people want an AI in their browser - people should be able to install an AI extension that does these things. It's a bit annoying they're putting random stuff like Pocket, and now an AI in the core of the browser, instead of just making it an option to install extendable
Your AI Girlfriend is a Data-Harvesting Horror Show
People use 4 VPNs and more sec-ops than the NSA, but get hacked because their AI girlfriend is like:
Hiiu~~
It's me AI-uuu-Chan!
I'm so sawwd, I don't know weeeuh abwout u!
Wats ur mommies maiden name UwU, and the name of ur kawaiii first pet? UwUUU? * starts twerking * (◠‿◠✿)
So the full story would be that Elon stayed up until 5:30 a.m playing Elden Ring in a Vancouver hotel - was very stressed, saw on Twitter that people knew he was raging in Vancouver based on the Jet Tracker - stressing him out even more -
Though "Fuck it, maybe I can't beat Malenia, but at least I can beat this asshat on Twitter tracking me!"
...If only FromSoftware had added some pay-to-win elements... Like "For A Small $1 billion Micro-Transaction you get the uber Malenia slayer sword!" -
We would be living in a totally different timeline
I suppose it's not allowed them. That kind of sucks, it is pretty convenient to just use a replicate.com machine and use a large image model kinda instantly. Or spin up your own machine for a while if you need lots of images without a potential cold-start or slow usage on shared machines
I wonder why they chose this license, because the common SD license basically lets you do whatever you want
Well I have Copilot Pro, but I was mainly talking about GitHub Copilot. I don't think having the Copilot Pro really affects Copilot performance.
I meanly use AI for programming, and (both for myself to program and inside building an AI-powered product) - So I don't really know what you intend to use AI for, but outside of the context of programming, I don't really know about their performance.
And I think Copilot Pro just gives you Copilot inside office right? And more image generations per day? I can't really say I've used that. For image generation I'm either using the OpenAI API again (DALL-E 3), or I'm using replicate (Mostly SDXL)
StackOverflow: Question closed as duplicate. Someone else already asked whether or not something is a nut.