It's hard to answer this question without knowing what languages you already know and how experienced you are. I'd recommend Python regardless. It's very useful for writing small scripts sometimes and is used pretty widely I'd say. Can't say too much about Rust, but it looks interesting.
The odd thing is, though, I still don't really see how you can solve C-small without solving C-large at the same time (other than actual brute-force). Guess I'll be keeping my eyes peeled for the write-up.
If you don't mind me asking, how do you guys? I always compete in my university's "local" contest, which is basically a tryout for competing for a spot on the team that goes to the ACM. I try doing practice problems, but when I can't solve one, I'm not sure where to go from there.
It just takes a bit of practice. Once you've seen a certain type of problem before, it is easy to identify other problems that can be somehow reduced to a known problem. Speed comes with practice too... soon, basic constructs like for-loops just get etched into muscle memory. Don't worry, I couldn't even solve a single problem in my first tryout at my university.
At my university, after a practice session, we sometimes discuss solutions to problems so that those who couldn't figure them out will know how to solve them in the future. After being told the solution to a problem you couldn't solve, you should try coding it up anyway.
This really hit home with me. For a while now, whenever I've been coding, I've been more focused on learning new things instead of creating things. While this isn't necessarily a bad thing, I had project for a CS course that I didn't end up doing so well on, and I attribute that partly to me not having built something in a long time.
I'd like to change that this year. When he posed the question "What was the last thing you built that gave you that Builder's High?", I sure as hell couldn't remember much that I've built recently that gave me that feeling.
I like to separate my time in 3 parts:
loop:
1/3 : Reading/researching/learning new concepts.
1/3 : Hands-on experiment with what I learned.
1/3 : Actual work, were I might apply what I've learnt
in the last 2 phases.
The new knowledge gathered improves my throughput in the 3rd phase, making up for the 'lost time' doing research. That's of course a rough estimate and I don't have any numbers to back that up, aside from my own biased experience living it.
I find it's a good balance and having it formally listed out reminds me to actively switch from a phase to another every few weeks. I end up always applying newly learnt stuff, which is rewarding and motivating.
As someone who's received praise on being smart as a child, I don't think it's necessarily all that bad, depending on the mindset the child already has. If they already realize that working hard will lead to them doing better in school, then it probably won't have as debilitating as an effect.
Nor do the study authors propose that "it's necessarily all that bad." It's a population trend. Eg, in the first experiment 90% of those praised for their intelligence chose the easier test while "a majority" of those praised for their effort chose the harder test. This suggests that 10% of the first group weren't "debilitated" by praise.
Similarly, on page 4 "Of the kids praised for their intelligence, 40 percent lie, inflating their scores. Of the kids praised for effort, few lie." Again, it's doesn't have a universal negative effect.
But when adults (not only parents, but other family, even strangers) recognize and praise "smartness" long before the child can understand that hard work is involved? I'd say this is the problem. And it seems to be so for praise of most any attribute: praise a child constantly for their looks and they seem to have similar self-confidence problems later in life as well.
That's true, but they may also be praising "smartness" before the child knows what that is either. However, given how schools work, it's pretty unlikely that someone will realize what it means to be considered smart after they've realized the value of hard work.
Is it really that big a deal to have the phone numbers connected to the usernames, rather than just having the phone numbers or just the usernames? I can see that someone may have the same username in multiple places, but at least out of the Snapchat users I know, it isn't likely they'd be able to trace the username to a person. Also, people sometimes post their phone numbers on things like Facebook as well, so some of that information may already be public.
Curious how the title of the original article fit into the content of the article as well.
The comparison made between English and C++ (spoken/written language and programming language) makes me wonder if people should even be comparing the two at at all. They do serve similar purposes in a sense, but what I'm wondering is if we would even compare them if they both weren't called "languages"? If the words used for programming language and written/spoken languages were completely disjoint, would this point even be brought up?
Language Theory is a subset of automata theory that covers both. So at least in some sense, they are comparable. We can place them in Chomsky's Hierarchy and compare the constructs that are meaningful in both.
They share the same node, language, so I don't see they could avoid comparison. In fact, programming language could be argued to be a specialization of spoken language. After all we're not punching in bytes by hand on control cards anymore.
Even if there was an apparent 'Apple tax' on the new Mac Pros, as long it wasn't too much, I wouldn't mind. They make great hardware and software, and sometimes it's worth it to pay a little bit extra to get this. After all, we don't go around testing the Apple tax on the iPhone, and comparing it to other smart phones, since the iPhone is one of the more expensive phones on the market.