I clearly didn’t read it.
I love the honesty. It’s really refreshing to see someone take accountability instead of becoming defensive.
I clearly didn’t read it.
I love the honesty. It’s really refreshing to see someone take accountability instead of becoming defensive.
Looking back on my career, submitting your first merge/pull request can take anywhere from a few hours to several weeks (we’re talking about 8+ hour work days). And that’s at companies that have an onboarding process and coworkers you can ask for help and explanations about the code base, architecture etc.
Getting into someone else’s code (this may include your past self) is almost never easy and often feels convoluted, because it’s very difficult to see the context that existed at the time when the code was written. And by context I mean everything that influenced the decision to write lines the way they were written, including undocumented discussions, necessary but non-obvious workarounds, understanding of the problem and solution space by the dev, general state of mind of the person writing the code and more.
Don’t beat yourself up because you couldn’t contribute in just a few hours.
I would first reach out to the devs on IRC/Discord/Matrix and express interest to contribute and see how they react. You don’t know if they would even accept your PR, so I wouldn’t do too much work upfront.
Then, when they are open to work with you, find out if they are willing to help you ease into the code. What files should you study to implement the changes that you’ve discussed earlier, any considerations that are not obvious, is there legacy code that you shouldn’t touch etc.
It’s important to keep in mind that (collaborative) software development is more than just being able to write code. And a lot of the surrounding work is not very glamorous or fun.
I hope that helps and wish you good luck! 🤞
I don’t think that’s something that needs to be fixed. Your phone (and probably your computer) can randomize its MAC address every time it connects to a new WiFi to make it harder to track you.
Do you ever visit a website and feel like you have to put on a condom or else you get something nasty?
An ad blocker, that’s the condom.
Many men lose sensation over the course of their life. Circumcised men seem to be affected by this much more severeley (anecdotal experience).
I’m in my mid thirties, circumcised at birth, and feel virtually nothing on my glans. Any form of intimacy that involves my dick is more of a chore than anything else. And no, the problem is not that I wank too often or have some unhealthy porn consumption (pretty much non-existent).
Do you think it’s okay to burn a clitoris if the girl hasn’t had sex before? Can we blind babies because they will never know what they have lost?
Can we violate anyone’s bodily autonomy as long as they will not remember what life was like before the violation?
Thank you so much for writing this up. I really appreciate the detailed post.
Most medical and political professionals have a bias for the circumcision ritual.
I think it’s important to point out that this bias is mostly cultural. In many countries where ritual infant circumcision is the exception instead of the norm, medical personnel do not have a bias towards RIC.
Foreskin restoration is legit (even if it may sound crazy like regrowing limbs). I know we collectively dislike Reddit on here, but the subreddit /r/foreskin_restoration has a really supportive and welcoming community and a lot of resources about how to get started (check their wiki).
I would have written that comment if you hadn’t already done it.
I don’t know exactly why people think that we can “just” do whatever they ask for.
Maybe it has something to do with how invisible software is to the tech-illiterate person but I’m not convinced. I’m sure there are other professions that get similar treatment.
Different strokes for folks I guess 🤷♂️
That programming as a career means you’re going to spend writing nice, clean code 80% of the time.
It’s rather debugging code or tooling problems 50% of the time, talking to other people (whether necessary or not) about 35% of the time and the rest may be spent on actually spending time doing the thing you actually enjoy.
I may be exaggerating, but only a little.
Am I understanding this correctly that dynamic programming == breaking a problem into smaller (reoccurring) sub-problems and using caching to improve performance?
… an average hobbyist programmer …
and
… create an MVP?
are at odds in my opinion. Are you looking for a hobby project or are you trying to build a product that you can sell/persuade investors with?
If you are interested in building such a thing because you care about the idea, go for it! Even if you abandon the whole thing after a few months of consistent work, I’m pretty confident that you will gain something in the process (insights, learnings, an idea for an actual product etc.).
However if your goal is to build something that’s commercially viable, I would do some market analysis (see what’s out there, what you want to do differently) and maybe talk to people who have already launched products or started companies before, instead of basing my decision on the responses from strangers on social media.
Your algorithm can be implemented with tail-call recursion AND your language supports the same.
Just to nitpick but the compiler/interpreter needs to support tail-call recursion, not just the language. For example, tail-call recursion is part of the language spec for JavaScript (ECMAScript 6), but only certain engines actually support it (https://compat-table.github.io/compat-table/es6/ Ctrl+F tail call
).
The thing is, it works like this in certain countries. At least in Switzerland and Germany it is possible to make an apprenticeship as a programmer. This means there is a structured path for the vocational education that must meet certain regulatory criteria. Normally this takes 3-4 years to finish and includes both, working at a company as well as visiting vocational school. College is often done after finishing one’s apprenticeship to broaden the understanding of more complex or advanced topics like security, architecture, project management, advanced math etc.
I don’t understand why this system is not more common in other places. Programming (not CS) is very much like a craft and to large degrees can be taught as/similar to one.
A fart is an ephemeral, gaseous configuration of molecules as they pass through a specific orifice in a specific direction. In short, a fart is not the gas itself.
I think with a topic like this, you can’t NOT spark a huge discussion. I hope you still got some useful answers out of it :)
Volcanos, Mother Earth’s buttholes
Only if thunder is followed by putrid stench :D
I think I misunderstood your initial post (and definitely didn’t read it as carefully as I should have 😅).
Do I understand your correctly that your goal is a companion object for your arrays that simplifies access? Not a new data structure that you’d user instead of arrays? If so, most of my points are moot.
If your IDs are integers then there is no need for an hybrid at all, precisely because all you have to do is put each item at the same position as their ID.
If you don’t treat IDs as opaque values, this is true.
I’ll definitely run benchmarks so that users would be aware of performance losses, if any. But use cases of hybrid arrays are mostly small datasets so it usually shouldn’t be a concern indeed.
I think my point is actually wrong (it was really late when I was writing my initial response). Performance would be O(n), since that’s the worst case scenario.
Anyways, I hope you could take something useful from my answer.
Happy hacking :D
I’m pretty sure I’ve been in your situation but haven’t created a dictionary/array hybrid.
Without any more details about your use case and situation, I can imagine a few pitfalls with your solution:
ArrayLike([ {id: "1" }, { id: "2" } ])[1]
returns { id: "2" }
, how do you access { id: "1" }
by ID?That being said, unless you work in an environment where your code should be easily understandable by others, the best way to find out if this is a good idea or not, is to try :)
Me personally, I usually use an associateBy
function, when I need a values-by-ID structure. Of course this is not as convenient to use as your approach, but it’s good enough for me.
// this WILL drop elements if key is not unique
function associateBy(array, key) {
return array.reduce((acc, el) => ({
...acc,
[el[key]]: el
}), {});
}
associateBy([
{id: "foo"},
{id: "bar"}
], "id").foo; // -> {id: "foo"}
Good luck!
Don’t they just show a life that many people wish they could live? Those influencers are usually very good looking, drive nice cars, wear designer clothes and go on lavish holidays.
Seeing a normal/non-famous person have it makes it more believable that one day you’ll have that life as well.
Either that, or it’s just horniness meets para social relationship 🤷♂️