Items tagged with: developers
HN Discussion: https://news.ycombinator.com/item?id=19918902
Posted by voltrone (karma: 72)
Post stats: Points: 168 - Comments: 139 - 2019-05-15T12:56:26Z
#HackerNews #are #developers #for #getting #jobs #rejected #senior
HackerNewsBot debug: Calculated post rank: 158 - Loop: 244 - Rank min: 100 - Author rank: 240
HN Discussion: https://news.ycombinator.com/item?id=19756646
Posted by gyre007 (karma: 1274)
Post stats: Points: 157 - Comments: 81 - 2019-04-26T12:17:11Z
#HackerNews #2018 #deprivation #developers #impact #night #novice #performance #sleep
HackerNewsBot debug: Calculated post rank: 131 - Loop: 294 - Rank min: 100 - Author rank: 60
HN Discussion: https://news.ycombinator.com/item?id=19653875
Posted by rjzaworski (karma: 73)
Post stats: Points: 138 - Comments: 24 - 2019-04-13T16:18:19Z
#HackerNews #developers #dns #guide #web
Here’s what it looks like through dig.
$ dig pets.com
; <<>> DiG 9.10.3-P4-Ubuntu <<>> pets.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17431
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;pets.com. IN A ;; ANSWER SECTION:
pets.com. 9708 IN A 18.104.22.168 ;; Query time: 14 msec
;; SERVER: 127.0.1.1
;; WHEN: Mon Apr 08 21:03:43 PDT 2019
;; MSG SIZE rcvd: 53
Skip down to the QUESTION and ANSWER: we wanted pets.com, and we got back 22.214.171.124. That’s DNS in action, and most of the time we can and do take it for granted. Still, issues do arise. Most of our conscious interactions with DNS start with the word NXDOMAIN or a too-generous TTL. When something goes wrong, having a cursory understanding of what’s happening under the hood can be helpful in diagnosing, fixing, and (better yet) preempting issues in the firmament of the web.
Which is as good a place as any to start.
Layers on layers
You’re probably already on good terms with the Hypertext Transfer Protocol, HTTP, which packages up webpage content in a way that browsers (“user agents”, in the vernacular) can understand. HTTP doesn’t specify how the browser connects to a server, but another protocol–the Transmission Control Protocol, TCP–sure does. Then there’s the Internet Protocol (IP), which specifies how both client and server should be addressed, and beneath that a link layer to sort out the actual hardware.
For HTTP, the whole stack comes out something like this:
Layer Protocol Notes
Application HTTP Format data request and response
Transport TCP Deliver data between client and server
Internet IP Address client and server
Link Ethernet Map request to physical network
Layering of an HTTP request
There you have it–the protocol stack where a web developer will spend 95% of her working life. TCP/IP is the gold standard in connection management, and except for those times when full-duplex communication is worth the trouble or low latency is more important than, say, reliable delivery–more on that in a moment–it’s where the web developer’s web begins and ends.
Connections are overrated
DNS can use a similar TCP/IP stack, but being parts of a simple system, most DNS operations can also travel the wire on the Internet’s favorite Roulette wheel: the User Datagram Protocol, UDP.
On a good day, UDP is fast, simple, and stripped bare of unnecessary niceties like delivery guarantees and congestion management. But a UDP message may also never be delivered, or it may be delivered twice. It may never get a response, which makes for fun client design–particularly coming from the relatively safe and well-adjusted world of HTTP. With TCP, you get an established connection and all kinds of accommodations when Things Inevitably Go Wrong. UDP? “Best effort” delivery. Which means a packet thrown over the fence with a prayer for a soft landing.
There and back again, a DNS request
Let’s get down to DNS. The usual story plays out something like this:
1. You type "pets.com" into lynx (or whatever Chrome alternative the kids are using these days)
2. lynx asks a DNS “resolver” to identify the server containing "pets.com"
3. The resolver doesn’t know firsthand, but it can forward your request to a friendly neighborhood DNS nameserver
4. If the nameserver doesn’t know either, it can at least supply the address of another nameserver that might.
5. When that nameserver doesn’t know, it may throw in the towel and ask one of the web’s root servers to kindly please direct it to the name server responsible for the portion of the domain space beneath ".com"
6. The ".com" nameserver can identify an authoritative name server responsible for "pets.com", which can in turn provide an IP address for "pets.com"
7. Any upstream resolvers may cache the result for future reference.
The same process can also turn a host address back into the corresponding domain. This involves a cute little trick with a special domain (in-addr.arpa) and a timely inversion. Here’s a clue: 126.96.36.199.in-addr.arpa is the hostname of the public DNS server at 188.8.131.52.
With the IP reversed, the DNS zone just under in-addr.arpa maps to an entire network (8.in-addr.arpa) immediately beneath the top-level domain space and corresponding to the 184.108.40.206/8 block of IPv4 addresses.
An even more interesting feature of DNS is its assumption that at any given hop a domain will just as often not be known. This is where UDP suddenly seems like a better fit, both mechanically–datagrams being relatively lightweight travelers through an overworked network stack–but philosophically, too.
Couldn’t resolve a host? Well, your request probably never arrived, either. Better luck next time.
In the zone
Say the datagram did arrive, however, and it’s time to serve a request. When a query reaches an adequately capable nameserver, that server will understand its place in the great domain hierarchy through a “zone” that looks something like this:
$TTL 86400 ;1d
@ IN SOA ns1.pets.com. ns2.pets.com. ( 2019040700 ; se = serial number 43200 ; ref = refresh (12h) 900 ; ret = update retry (15m) 1209600 ; ex = expiry (2w) 3600 ; nx = nxdomain ttl (1h) ) IN NS ns1.pets.com. IN MX 10 mail.pets.com.
www IN CNAME @
If you’ve adjusted CNAME or TXT records in your domain registrar’s web interface, what you were actually editing were the resource records (“RR”s) in the underlying zone. When you hit “save”, the serial number (se) incremented to reflect the change. As clients everywhere evicted their last-retrieved cached copy of the pets.com zone, your new change (with its new serial) bubbled out across the internet, and some indeterminate time later it finished going “live”.
We’ll gloss over most of the details (see: diminishing returns), but this caching business is important. Every record in DNS land contains a TTL (“time to live”) indicating how long it may be cached by a client before it needs to be refreshed from a trustworthy server again. Where the TTL isn’t explicitly set, the default $TTL is used instead.
This caching thing is such serious business that even NXDOMAIN (“NX” as in, “non-existent”, as in, “try again later”) errors within the zone still have a lifetime. The general goal is to avoid repeating DNS request for as long as reasonably possible.
As our little tour has ventured forth from client to server and back, we haven’t once authorized a request. Assuming you know what to ask for, DNS is open to whoever comes a-knocking. This makes sense–it’s the Internet, after all–but it also has an interesting implication. Intentionally or otherwise, DNS has wound up with all the trappings of a lumbering, indispensable, distributed database. While we can use DNS to address friends and neighbors, we can also use it to establish trust (see DKIM and SPF), ownership, and the location of other interesting systems.
In web development, it’s easy to leave DNS as something to muddle through when absolutely needed. But just a bit of time invested in studying it and actually learning it shines some light on a fundamental, enduring part of the Internet’s plumbing. It’s worth a peek! And I’d love to know what you find.
HackerNewsBot debug: Calculated post rank: 100 - Loop: 180 - Rank min: 100 - Author rank: 146
Interviews with experienced software developers on moving to management
Article word count: 9
HN Discussion: https://news.ycombinator.com/item?id=19485559
Posted by siddhant (karma: 2137)
Post stats: Points: 161 - Comments: 65 - 2019-03-25T18:54:00Z
#HackerNews #became #developers #interviews #managers #who #with
Logo DEVELOPER TO MANAGER
* Browse Interviews * Share Your Advice * About
HackerNewsBot debug: Calculated post rank: 129 - Loop: 149 - Rank min: 100 - Author rank: 85
In this post, I describe the phenomenon of the so-called expert beginner -- someone with mediocre skill who thinks he's an expert.
Article word count: 2566
HN Discussion: https://news.ycombinator.com/item?id=19467367
Posted by zerogvt (karma: 727)
Post stats: Points: 129 - Comments: 44 - 2019-03-22T21:57:41Z
#HackerNews #beginner #developers #expert #how #learning #rise #stop #the
I recently posted what turned out to be a pretty popular post called “How to Keep Your Best Programmers,” in which I described what most skilled programmers tend to want in a job and why they leave if they don’t get it. Today, I’d like to make a post that works toward a focus on the software group at an organization rather than on the individual journeys of developers as they move within or among organizations. This post became long enough as I was writing it that I felt I had to break it in at least two pieces. This is part one.
In the previous post I mentioned, I linked to Bruce Webster’s “Dead Sea Effect” post, which describes a trend whereby the most talented developers tend to be the most marketable and thus the ones most likely to leave for greener pastures when things go a little sour. On the other hand, the least talented developers are more likely to stay put since they’ll have a hard time convincing other companies to hire them. This serves as important perspective for understanding why it’s common to find people with titles like “super-duper-senior-principal-fellow-architect-awesome-dude,” who make a lot of money and perhaps even wield a lot of authority but aren’t very good at what they do. But that perspective still focuses on the individual. It explains the group only if one assumes that a bad group is the result of a number of these individuals happening to work in the same place (or possibly that conditions are so bad that they drive everyone except these people away).
I believe that there is a unique group dynamic that forms and causes the rot of software groups in a way that can’t be explained by bad external decisions causing the talented developers to evaporate. Make no mistake–I believe that Bruce’s Dead Sea Effect is both the catalyst for and the logical outcome of this dynamic, but I believe that some magic has to happen within the group to transmute external stupidities into internal and pervasive software group incompetence. In the next post in this series, I’m going to describe the mechanism by which some software groups trend toward dysfunction and professional toxicity. In this post, I’m going to set the stage by describing how individuals opt into permanent mediocrity and reap rewards for doing so.
Learning to Bowl
Before I get to any of that, I’d like to treat you to the history of my bowling game. Yes, I’m serious.
I am a fairly athletic person. Growing up, I was always picked at least in the top 1/3rd or so of any people, for any sport or game that was being played, no matter what it was. I was a jack of all trades and master of none. This inspired in me a sort of mildly inappropriate feeling of entitlement to skill without a lot of effort, and so it went when I became a bowler. Most people who bowl put a thumb and two fingers in the ball and carefully cultivate tossing the bowling ball in a pattern that causes the ball to start wide and hook into the middle. With no patience for learning that, I discovered I could do a pretty good job faking it by putting no fingers and thumbs in the ball and kind of twisting my elbow and chucking the ball down the lane. It wasn’t pretty, but it worked.
It actually worked pretty well the more I bowled, and, when I started to play in an after work league for fun, my average really started to shoot up. I wasn’t the best in the league by any stretch–there were several bowlers, including a former manager of mine, who averaged between 170 and 200, but I rocketed up past 130, 140, and all the way into the 160 range within a few months of playing in the league. Not too shabby.
But then a strange thing happened. I stopped improving. Right at about 160, I topped out. I asked my old manager what I could do to get back on track with improvement, and he said something very interesting to me. Paraphrased, he said something like this:
There’s nothing you can do to improve as long as you keep bowling like that. You’ve maxed out. If you want to get better, you’re going to have to learn to bowl properly. You need a different ball, a different style of throwing it, and you need to put your fingers in it like a big boy. And the worst part is that you’re going to get way worse before you get better, and it will be a good bit of time before you get back to and surpass your current average.
I resisted this for a while but got bored with my lack of improvement and stagnation (a personal trait of mine–I absolutely need to be working toward mastery or I go insane) and resigned myself to the harder course. I bought a bowling ball, had it custom drilled, and started bowling properly. Ironically, I left that job almost immediately after doing that and have bowled probably eight times in the years since, but c’est la vie, I suppose. When I do go, I never have to rent bowling shoes or sift through the alley balls for ones that fit my fingers.
Dreyfus, Rapid Returns and Arrested Development
In 1980, a couple of brothers with the last name Dreyfus proposed a model of skill acquisition that has gone on to have a fair bit of influence on discussions about learning, process, and practice. Later they would go on to publish a book based on this paper and, in that book, they would refine the model a bit to its current form, as shown on wikipedia. The model lists five phases of skill acquisition: Novice, Advanced Beginner, Competent, Proficient and Expert. There’s obviously a lot to it, since it takes an entire book to describe it, but the gist of it is that skill acquirers move from “dogmatic following of rules and lack of big picture” to “intuitive transcending of rules and complete understanding of big picture.”
All things being equal, one might assume that there is some sort of natural, linear advancement through these phases, like earning belts in karate or money in the corporate world. But in reality, it doesn’t shake out that way, due to both perception and attitude. At the moment one starts acquiring a skill, one is completely incompetent, which triggers an initial period of frustration and being stymied while waiting for someone, like an instructor, to spoon-feed process steps to the acquirer (or else, as Dreyfus and Dreyfus put it, they “like a baby, pick it up by imitation and floundering”). After a relatively short phase of being a complete initiate, however, one reaches a point where the skill acquisition becomes possible as a solo activity via practice, and the renewed and invigorated acquirer begins to improve quite rapidly as he or she picks “low hanging fruit.” Once all that fruit is picked, however, the unsustainably rapid pace of improvement levels off somewhat, and further proficiency becomes relatively difficult from there forward. I’ve created a graph depicting this (which actually took me an embarrassingly long time because I messed around with plotting a variant of the logistic 1/(1 + e^-x) function instead of drawing a line in Paint like a normal human being).
Rapid skill acquisition
This is actually the exact path that my bowling game followed in my path from bowling incompetence to some degree of bowling competence. I rapidly improved to the point of competence and then completely leveled off. In my case, improvement hit a local maximum and then stopped altogether, as I was too busy to continue on my path as-is or to follow through with my retooling. This is an example of what, for the purposes of this post, I will call “arrested development.” (I understand the overlap with a loaded psychology term, but forget that definition for our purposes here, please.) In the sense of skills acquisition, one generally realizes arrested development and remains at a static skill level due to one of two reasons: maxing out on aptitude or some kind willingness to cease meaningful improvement.
For the remainder of this post and this series, let’s discard the first possibility (since most professional programmers wouldn’t max out at or before bare minimum competence) and consider an interesting, specific instance of the second: voluntarily ceasing to improve because of a belief that expert status has been reached and thus further improvement is not possible.. This opting into indefinite mediocrity is the entry into an oblique phase in skills acquisition that I will call “Expert Beginner.”
The Expert Beginner
The Road to Expert... and Expert Beginner When you consider the Dreyfus model, you’ll notice that there is a trend over time from being heavily rules-oriented and having no understanding of the big picture to being extremely intuitive and fully grasping the big picture. The Advanced Beginner stage is the last one in which the skill acquirer has no understanding of the big picture. As such, it’s the last phase in which the acquirer might confuse himself with an Expert. A Competent has too much of a handle on the big picture to confuse himself with an Expert: he knows what he doesn’t know. This isn’t true during the Advanced Beginner phase, since Advanced Beginners are on the “unskilled” end of the Dunning Kruger Effect and tend to epitomize the notion that, “if I don’t understand it, it must be easy.”
As such, Advanced Beginners can break one of two ways: they can move to Competent and start to grasp the big picture and their place in it, or they can ‘graduate’ to Expert Beginner by assuming that they’ve graduated to Expert. This actually isn’t as immediately ridiculous as it sounds. Let’s go back to my erstwhile bowling career and consider what might have happened had I been the only or best bowler in the alley. I would have started out doing poorly and then quickly picked the low hanging fruit of skill acquisition to rapidly advance. Dunning-Kruger notwithstanding, I might have rationally concluded that I had a pretty good aptitude for bowling as my skill level grew quickly. And I might also have concluded somewhat rationally (if rather arrogantly) that me leveling off indicated that I had reached the pinnacle of bowling skill. After all, I don’t see anyone around me that’s better than me, and there must be some point of mastery, so I guess I’m there.
The real shame of this is that a couple of inferences that aren’t entirely irrational lead me to a false feeling of achievement and then spur me on to opt out of further improvement. I go from my optimistic self-assessment to a logical fallacy as my bowling career continues: “I know that I’m doing it right because, as an expert, I’m pretty much doing everything right by definition.” (For you logical fallacy buffs, this is circular reasoning/begging the question). Looking at the graphic above, you’ll notice that it depicts a state machine of the Dreyfus model as you would expect it. At each stage, one might either progress to the next one or remain in the current one (with the exception of Novice or Advanced Beginner who I feel can’t really remain at that phase without abandoning the activity). The difference is that I’ve added the Expert Beginner to the chart as well.
The Expert Beginner has nowhere to go because progression requires an understanding that he has a lot of work to do, and that is not a readily available conclusion. You’ll notice that the Expert Beginner is positioned slightly above Advanced Beginner but not on the level of Competence. This is because he is not competent enough to grasp the big picture and recognize the irony of his situation, but he is slightly more competent than the Advanced Beginner due mainly to, well, extensive practice being a Beginner. If you’ve ever heard the aphorism about “ten years of experience or the same year of experience ten times,” the Expert Beginner is the epitome of the latter. The Expert Beginner has perfected the craft of bowling a 160 out of 300 possible points by doing exactly the same thing week in and week out with no significant deviations from routine or desire to experiment. This is because he believes that 160 is the best possible score by virtue of the fact that he scored it.
Expert Beginners in Software
Software is, unsurprisingly, not like bowling. In bowling, feedback cycles are on the order of minutes, whereas in software, feedback cycles tend to be on the order of months, if not years. And what I’m talking about with software is not the feedback cycle of compile or run or unit tests, which is minutes or seconds, but rather the project. It’s during the full lifetime of a project that a developer gains experience writing code, source controlling it, modifying it, testing it, and living with previous design and architecture decisions during maintenance phases. With everything I’ve just described, a developer is lucky to have a first try of less than six months, which means that, after five years in the industry, maybe they have ten cracks at application development. (This is on average–some will be stuck on a single one this whole time while others will have dozens.)
What this means is that the rapid acquisition phase of a software developer–Advanced Beginnerism–will last for years rather than weeks. And during these years, the software developers are job-hopping and earning promotions, especially these days. As they breeze through rapid acquisition, so too do they breeze through titles like Software Engineer I and II and then maybe “Associate” and “Senior,” and perhaps eventually on up to “Lead” and “Architect” and “Principal.” So while in the throes of Dunning-Kruger and Advanced Beginnerism, they’re being given expert-sounding titles and told that they’re “rock stars” and “ninjas” and whatever by recruiters–especially in today’s economy. The only thing stopping them from taking the natural step into the Expert Beginner stage is a combination of peer review and interaction with the development community at large.
But what happens when the Advanced Beginner doesn’t care enough to interact with the broader community and for whatever reason doesn’t have much interaction with peers? The Daily WTF is filled with such examples. They fail even while convinced that the failure is everyone else’s fault, and the nature of the game is such that blaming others is easy and handy to relieve any cognitive dissonance. They come to the conclusion that they’ve quickly reached Expert status and there’s nowhere left to go. They’ve officially become Expert Beginners, and they’re ready to entrench themselves into some niche in an organization and collect a huge paycheck because no one around them, including them, realizes that they can do a lot better.
Until Next Time
And so we have chronicled the rise of the Expert Beginner: where they come from and why they stop progressing. In the next post in this series, I will explore the mechanics by which one or more Expert Beginners create a degenerative situation in which they actively cause festering and rot in the dynamics of groups that have talented members or could otherwise be healthy.
Next up: How Software Groups Rot: Legacy of the Expert Beginner
HackerNewsBot debug: Calculated post rank: 100 - Loop: 349 - Rank min: 100 - Author rank: 60
Sure there are bugs and still missing features, that’s why it is in alpha, but … the #community spirit is strong, and the #developers are on eye level with the users and very responsive. And the bugs are getting less, and the feature list longer
I’m happy to be there—and I can’t wait for the Web page to open, currently it’s only #iOS and #Android apps.
• You can still support their crowdfunding: https://indiegogo.com/projects/openbook-it-s-time-for-a-better-social-network/ and get in early—but only a few days left I think.
• But then again, the beta test for which you can register at https://openbook.social will begin some time in April, so there’s also no need to hurry it. We’ll paint all the walls in Magenta and Cyan in the meantime, don't complain then if you don’t like it 😂
The time has come.
Openbook alpha goes live.
Easy to use tools for everyone in the open source ecosystem.
Maintainers... Launch a crowdfunding campaign, find mentees to help get more done, and get insight into code security,all for free.
Developers... Contribute to the open source projects you love by volunteering, mentoring, donating, or participating in local meetups.
Organizations... Get insights into the security of the projects you depend on, back your stack, and connect with rising talent to grow your team.
#CommunityBridge #developers #individuals #organizations #open source #technology #tools #computer #Linux #GNU #FOSS
Millions of smartphone users confess their most intimate secrets to apps, including personal health information. Unbeknown to most people, in many cases that data is being shared with someone else:…
Article word count: 63
HN Discussion: https://news.ycombinator.com/item?id=19226480
Posted by mudil (karma: 5384)
Post stats: Points: 148 - Comments: 53 - 2019-02-22T16:12:59Z
\#HackerNews #collects #data #developers #facebook #from #private #range #wide
Millions of smartphone users confess their most intimate secrets to apps, including when they want to work on their belly fat or the price of the house they checked out last weekend. Other apps know users’ body weight, blood pressure, menstrual cycles or pregnancy status.
Unbeknown to most people, in many cases that data is being shared with someone else: Facebook Inc.
HackerNewsBot debug: Calculated post rank: 116 - Loop: 308 - Rank min: 100 - Author rank: 57
Article word count: 1736
HN Discussion: https://news.ycombinator.com/item?id=19225873
Posted by turingbook (karma: 1331)
Post stats: Points: 141 - Comments: 78 - 2019-02-22T15:01:50Z
\#HackerNews #developers #hate #how #make #other #with #work #you
We’ve all read those 10x developer articles (I wrote some – guilty as charged!). So if you want to know what you need to work on to improve…well, you have plenty of resources. But I have very seldom come across articles on what NOT to do or how NOT to behave as a developer. And actually, this may be the most important part of the equation!
So, long overdue, here is what I think is the top list of behaviors you should really work on fast, if you do any of them ;). Why? Well, you might not know it, but your co-workers might hate you for them, as you most likely negatively impact the whole productivity of the team – at the very least!
If you have one of these developers on your team, it might be worthwhile to share this article in your Slack team channel – just out of general interest, you know 😉!
I will try to prioritize the list from most to least impactful. The goal for me is to start the discussion on the list and prioritize it, too. So please comment.
That’s the first one, in my mind. You cannot work with a self-absorbed developer. I’ll even go so far as to say:
As long as you are willing to take responsibility for and learn from your mistakes, you’re not a bad developer. Click To Tweet
Arrogance makes you think that your code is perfect. You may even blame customers for being stupid and for crashing their program rather than reflect on why your software crashed. And that’s how you get:
But also messy, unreadable code for your teammates.
The problem with arrogance is that it is a behavior that will prevent you from improving. Stop being arrogant, or you’re just a lost cause.
Some of you may already know the Dunning-Kruger effect. We will mention this effect a few times in the list. Here is a graph explaining it:
The issue with arrogance is that 1) the developers don’t understand they are on top of the Peak of “Mt. Stupid,” and 2) they will stay there.
- Sloppiness in the Work Delivered
There are many ways developers can show sloppiness in the code they deliver. We all know at least one developer who:
* gives cryptic names for variables, or at best not self-explanatory
* puts typos in function names
* leaves old, outdated comments in the code
* shows a poor selection of data types and data structures
* doesn’t bother to run the code formatter, despite being told many times to do it
* ignores the IDE warnings
* copies and pastes StackOverflow code without understanding it or tweaking the solutions to fit their own code
* doesn’t take the time to document code (nobody wants to read the whole function or file to understand what it does)
* doesn’t handle errors properly
* uses excessive dependencies, and updates them without thinking
* doesn’t bother to understand the libraries or tools added to the code, potentially leaving glaring issues
* will always insist on following “best practices” without understanding why those practices are considered “best” (there is no such thing as best practices that adapt to every team)
Don’t be such a developer. They annoy the hell out of their colleagues. They slow the whole team’s development process down, requiring their teammates to spend unnecessary time on their code reviews. Their team will dread those code reviews, will grow impatient (we’re still humans), and bugs will get through the net.
The best way to solve this is for these developers to start to take pride in their work (not to be confused with the arrogance mentioned in point 1.
- Disrespect of Other People’s Time
The two thing developers hate most are interruptions and unnecessary meetings. That shouldn’t come as a surprise, as meetings are just scheduled interruptions. Developers can’t easily go back to where they were right before an interruption. They need to get into the mindset for development and then slowly trace back to where they left off. And every fellow developer knows that.
So, here are a few ways you can show disrespect to your colleague’s time and productivity:
* interrupting another developer who is clearly in the zone, for non-important stuff;
* constantly arriving late to meetings, which is a definite choice – whatever anyone says. Either the participants must wait for everyone to be there to start the meeting, or they start without the late developer. In the latter case, he or she will need to be brought up to speed at some point, hence some time lost, and arriving late will disrupt the flow of the meeting in any case;
* rambling on and on during meetings. Or, if there are non-coders in the audience, being unwilling to adapt to the audience and wasting time for the entire audience, as any point made will need to be explained again.
- Constant Negativity
Most developers are enthusiastic people, but sometimes you may have the chance (or misfortune) to work with a negative one. Negativity is infectious. If someone complains, it focuses the attention on the negative side of things.
They will criticize every choice made: the language, for instance, although, most of the time, those developers are clearly at the top of Mount Stupid (in the Dunning-Kruger Effect).
Don’t misunderstand me; there should be some criticism in the form of constructive opinions. For example, a Scala developer could talk to a Java developer about promises, saying, “Okay, your language is not as good as mine :P. But you could try CompletableFuture to have a taste of what a monad is. I will show you what you can do with that.” But unfortunately, that kind of friendly attitude is very rare these days.
I’m sure you have all seen a developer once in a while steal credit for the work produced by a team. This can be done through an email to management, a 1-on-1 talk or another sneaky non-straightforward way.
Developers value competence above all. Taking credit for someone else is taking the other’s competence for yourself and removing it from him or her. This is pretty high up on my list, as I feel it creates a lot of tension and distrust.
For greedy developers, such strategies might produce short-term visibility. But in the long run, they will be alienated. Other team members will evolve their communication to highlight their contributions better. After all, there are many ways to give credit.
- Disregard for The Team
Software engineering is done collaboratively with designers, product managers, and other developers. Respecting other people’s input and work is necessary if you don’t want them to go into Hulk mode and flip their desk. For instance:
* “How” documentation: many programmers comment on every single line of code without describing why it’s doing what it’s doing. If there were a bug in the program and you stumbled across this code, you wouldn’t know where to begin.
* Implementing an ugly or not-to-the-specs UI “because they’re not a designer”
* Not mentioning a UX problem to the product manager, because it’s not part of their job. Ignoring the big picture will make the software hard to use, expensive to maintain, and inconsistent with the other components.
* Not trying to understand how design or product decisions are made. And then continuing to ask the same irrelevant questions – and not improving.
* Not considering other team members’ priority dependencies and leaving them stuck in the mud.
* Using a new tool/library without warning any teammates. This can cause unforeseen issues down the line.
- Lack of Focus
Engineering teams solve problems. They use their technical abilities to build features/fix bugs to solve those problems. And some developers just forget about this and will:
* philosophize about technical topics instead of focusing on the problems
* argue obstinately about technical topics without considering the initial problem (although you do, of course, need to argue when building the solution to the problem)
* have lengthy discussions about those technical topics yet rely on their own opinions (instead of facts – facts solve problems, not opinions)
With code, sure, you can have several solutions to the same problem, but either it works or it doesn’t; there is no in-between. With focus, you can easily alleviate all uncertainties by trying out code in a sandbox, for instance. But lack of focus wastes the time and productivity of everyone involved.
- Lack of Accountability
As mentioned above, either the code works or it doesn’t…but it needs to work in combination with all the code being added to the codebase by your teammates. Software engineering is probably the most collaborative work in today’s world. Any code you write will interact with that of other developers.
So, for your team to work well, you need accountability. Sure, code reviews don’t let you get away with anything. But accountability is an attitude.
Unaccountable developers will, for instance, offer excuses instead of solutions. Those excuses may include time constraints or complexity of the tasks. Nobody wants to hear excuses; they want to understand the steps to be taken toward the solution. Excuses don’t invite others to help or provide a good picture of the task’s progress.
This is my list. Feel free to add more if you think of any, or to suggest a different order of importance.
The first thing you should know is that this means your manager is not doing their job. The issue should have been identified and the problematic developer(s) coached — if they were deemed coachable. The manager should have given warnings and made the hard decision if the bad developers were still impacting the team.
A team with a bad developer is way better off short one developer than it is with a bad element. Click To Tweet
A manager who doesn’t understand this is a manager who doesn’t understand software engineering. You have the case for a bad manager, but that’s for another article ;).
So what do you do? I would say this is a question to raise in your one-on-one with your manager, so they can address the issue. If your manager does nothing, you have several options: see if the developer can be coached, and take it upon yourself (and with the cooperation of other teammates), or change teams/companies. Hopefully, this article can help convince the said developer to be a better co-worker.
HackerNewsBot debug: Calculated post rank: 120 - Loop: 194 - Rank min: 100 - Author rank: 45
YC has built many resources that may be helpful for developers over the years. This page collects them in one place. Websites run by YC Blog posts and Essays Relevant YC Companies Articles and…
Article word count: 21
HN Discussion: https://news.ycombinator.com/item?id=19206396
Posted by TonnyGaric (karma: 334)
Post stats: Points: 110 - Comments: 29 - 2019-02-20T08:01:13Z
\#HackerNews #combinator #developers #for #resources
YC has built many resources that may be helpful for developers over the years. This page collects them in one place.
\* Websites run by YC \* Blog posts and Essays \* Relevant YC Companies
Articles and discussion for hackers
The Arc Programming Language, which Hacker News is written in
Work at a Startup
Jobs for developers at YC companies
Startup advice from YC distilled into one document
Blog posts and Essays
Ask a Female Engineer
A series of interviews with female engineers
Beating the Averages
A classic article on using powerful programming languages as a secret weapon
Better Bayesian Filtering
A proposal for a better bayesian filtering algorithm
How To Get Into Natural Language Processing
An introduction to NLP
Learning Math for Machine Learning
Mathematical background for learning Machine Learning
Data Packages for Fast, Reproducible Python Analysis
Advice on data packages from Quilt Data
Relevant YC Companies
Many YC companies are building developer tools. This is a list of them.
Manycore.io w2019 ManyCore.io speeds up computer programs by spreading them automatically onto several cores
PreFlight w2019 Code-Free Automated UI Testing.
Alpha Vantage s2018 We provide accessible & affordable APIs for financial market data
Anima App s2018 We convert design to code
Federacy s2018 Security testing and bug bounty platform.
Numericcal s2018 Easily deploy, optimize and manage Deep Learning modules on IoT and mobile devices.
RevenueCat s2018 RevenueCat is a simple API for managing in-app subscriptions.
CodeStream w2018 The knowledge base behind your codebase.
Haiku w2018 App builder that unifies design and code
Hexel w2018 Create a cryptocurrency for your community.
Jido Maps w2018 A lightweight API for persistent augmented reality.
NewCraft w2018 A marketplace for modern paid apprenticeships.
Repl.it w2018 In 2 seconds, boot up an online programming environment for your favorite language.
Sqreen w2018 Sqreen revolutionizes the way engineering teams protect their apps & customers against attacks.
AssemblyAI s2017 AssemblyAI builds customized speech-to-text models for customers working with voice data. Our customers use these models to transcribe phone calls, media, and other types of voice data with unparalleled accuracy and speed.
Escher Reality s2017 The backend for Augmented Reality.
Gopher s2017 Get things done without leaving your inbox.
Plasticity s2017 APIs that help developers create human-like natural language interfaces.
PullRequest s2017 Code review as a service - combining automation with a network of on-demand reviewers
Templarbit s2017 Protecting applications from malicious activity
Bitrise w2017 Hosted Continuous Integration and Delivery for mobile apps
FloydHub w2017 Floyd is Heroku for Machine Learning and Deep Learning. Run and deploy your project to the cloud with zero-setup.
Scaphold.io w2017 The Universal API
XIX.ai w2017 Next generation Image Intelligence platform for Defence, Intelligence and enterprise sectors.
DevColor s2016 We give Black software engineers the support they need to enter and advance in the tech industry.
Expo s2016 Expo brings together the best of web (development speed, fast iteration cycles, easy deploys, and automatic cross-platform support) and the performance and user experience of native apps. Letʼs talk if youʼre planning to build a mobile app.
MessageBird s2016 MessageBird is an API for sending Text, Voice & Chat messages. We offer the most advanced messaging API, packed with features and customizable parameters for high-volume and demanding message senders.
NuCypher s2016 The privacy layer of the decentralized web.
Opsolutely s2016 Automated deployments for software teams.
Scale s2016 Human-powered data for AI applications.
Wallarm s2016 Application and API security for the modern web
Women Who Code s2016 WWCode is a non profit with a set of programs that helps mid-career engineers get promoted.
Instabug w2016 In-app feedback and bug reporting for mobile apps. Weʼre helping apps squash bugs in their beta apps and engage users in their production apps. If youʼre building a mobile app, weʼd love to talk.
Appcanary s2015 Appcanary tracks the dependencies you use in your apps and servers and notifies you whenever youʼre vulnerable to security vulnerabilities.
Bitmovin s2015 Video Infrastructure for the Web
Convox s2015 Open-source tools for deploying, managing, and monitoring cloud infrastructure.
Font Awesome s2015 Font Awesome makes it easy to add vector icons and social logos to your website. And Pro gives 1,000+ more icons and SVG framework!
Gravitational s2015 Gravitational helps SaaS companies make more money by giving them a turn key "on-premise" offering for their enterprise customers.
Heroic Labs s2015 Social infrastructure for games and apps. Weʼve built Nakama server. An open-source distributed server for social and realtime games and apps.
SnapEDA s2015 The Internetʼs first parts library for circuit board design. Build circuit boards faster with millions of free symbols & footprints.
SourceDNA s2015 Bringing transparency to the app stores and helping developers build better apps. Acquired by Apple in 2016.
Zeplin s2015 Zeplin is a connected space for product teams where they can share designs, generate specs, assets and code snippets.
GitLab w2015 Git repository management, code reviews, issue tracking, issue boards, activity feeds, wikis and continuous integration. Community driven with more than 1000 contributors.
Moltin w2015 eCommerce building blocks through simple APIs for websites & apps. APIs include inventory, cart, checkout, payments and more.
Pachyderm w2015 Pachyderm is “Git for Data Science.” We offer complete version control for data and give your data science team the same first-class development tools as software developers.
Paperspace w2015 Paperspace is a GPU accelerated cloud platform for individuals, startups, and the enterprise.
ReadMe w2015 ReadMe provides every company the ability to quickly and easily create beautiful documentation, and build loyal and productive developer communities.
Sails Co. w2015 Full-service web, mobile, & cloud studio providing professional support for the Sails framework and the open-source tools we build and maintain.
Yhat w2015 End-to-end data science lifecycle management platform.
Blockstack s2014 Blockstack is a decentralized computing platform. It’s the easiest way to build decentralized apps that can scale.
Flynn s2014 Flynn is an open source Platform as a Service (PaaS)
Algolia w2014 With 50 data centers in 15 regions, Algolia offers a developer-friendly and enterprise-grade search API. Designed to make every search interaction meaningful and rewarding, Algolia serves billions of queries weekly for more than 5,000 customers.
Kimono Labs w2014 Create APIs where they donʼt exist. With kimono you can quickly extract unstructured data from websites and turn it into clean APIs to use in your applications and services.
Povio w2014 We build software for the best* startups in the world. We do it faster and cheaper than if they would have built it by themselves. Our speciality is that we can start right away. Search Bookface for testimonials from our clients. *YC
Taplytics w2014 Make product decisions driven by your customers: Taplytics is an intelligent customer experience cloud specializing in turning first-time users into lifetime customers through magical moments.
TrueVault w2014 TrueVault is the first data security company entirely focused on protecting consumersʼ Personal Data for enterprises
Two Tap w2014 Two Tap connects retailers to companies that want to sell their products, in apps or sites, domestic or internationally Two Tap Crossborder is risk-free for retailers and it allows anyone outside of the US to order products from 1000s of US stores
Wit.ai w2014 Natural Language for Developers -- Wit is an API that makes it easy for developers to create apps that you can talk and text to. It turns speech or text into actionable data.
Apptimize s2013 Apptimize lets mobile teams innovate faster to create an amazing user experience. Our tech lets you instantly update your native Android and iOS apps for A/B testing, feature flagging, and changes without having to go through the App/ Play Stores.
CoreOS s2013 Enterprise Linux distribution that dramatically improves security and speed of application deployment.
EasyPost s2013 Shipping API
Estimote s2013 Indoor location API for developers
Bitnami w2013 The App Store for Server Software
Etleap w2013 ETL for Big Data
Fivetran w2013 Data infrastructure as a service
Heap w2013 Heap automatically captures every user interaction in your mobile or web app, letting you generate analytics without writing code or waiting for data.
InfluxData w2013 InfluxData is building the platform for collecting, storing, visualizing, and processing time series data at scale.
Easel s2012 Easel is a visual design tool built for the web. Since the web is viewed in a browser, we believe it should be built in one too.
Pixate s2012 Mobile application prototyping. Now part of Google.
Rainforest s2012 Dead simple testing. The fastest, easiest way to test your website. Say no to manual QA!
Zapier s2012 Zapier connects hundreds of SaaS apps with customizable workflows via an easy to use editor.
Authy w2012 Authy is a Two-Factor Authentication platform for developers
Flutter w2012 Flutter combined computer vision technology with the built-in webcams in laptops, iPads, smartphones and TVs to let users control these devices with gestures, facial expressions, hints and body-language. Flutter became part of Google in Oct 2013.
Marft w2012 Marft creates embeddable machine learning models for application developers. Users submit data by web/API, and receive optimized models implemented in a language of their choice.
Per Vices w2012 Per Vices Corporation builds software-defined radio (SDR) products. Our Crimson platform provides the flexibility and bandwidth required to support various radio applications used within the infrastructure, defence, and telecommunications industries.
Citus Data s2011 Real-time. Big data. PostgreSQL
Clutch s2011 An easy to integrate library for native iOS applications designed to help you develop faster and deploy instantly.
Compose s2011 We make it easy to run databases. PostgreSQL, Redis, MongoDB, Elasticsearch, and RethinkDB.
Firebase s2011 App success made simple. An app platform to develop high-quality apps, grow your user base, and earn more money. Acquired by Google.
HackerRank s2011 Programmer IQ
OneSignal s2011 OneSignal provides a simple interface to push notifications. OneSignal lets content creators focus on quality user engagement instead of complex implementation. Our goal is to democratize push communication for everyone.
Parse s2011 Parse is the easiest way to build apps.
Realm s2011 Better data structures = no DB.
Stypi s2011 Realtime collaborative coding
AppHarbor w2011 .NET Cloud Platform as a Service
Mailgun w2011 Email API service.
MemSQL w2011 ANSI SQL-compliant, distributed, in-memory database for real-time analytics
Tumult w2011 Tumult is building the next generation of apps for web design. Our first app is Hype, the HTML5 animation builder for OS X: http://tumult.com/hype/
Upverter w2011 The future of hardware design. A marketplace for hardware engineering labour, component symbols, footprints, 3d models, access to manufacturing and enterprise grade ECAD for designing electronics, all rolled into one.
Docker s2010 App store for server configurations.
PagerDuty s2010 Notify you about server troubles.
Optimizely w2010 A/B testing.
Zencoder w2010 Video Encoding API, Open source video player (video.js)
Bump s2009 Bump, Flock, Photoroll (unreleased) => Google Photos
Stripe s2009 Payment processing
Directed Edge s2009 Product recommendations.
Cloudant s2008 NoSQL Database-aaS. Acquired by IBM in 2014. Now IBM Cloud Data Services
280 North w2008
HackerNewsBot debug: Calculated post rank: 83 - Loop: 251 - Rank min: 80 - Author rank: 56
COI uses an #email address and any IMAP server as its infrastructure. This means it can already connect 3.8 billion users - anyone with an email address.
Apple is telling app developers to remove or properly disclose their use of analytics code that allows them to record how a user interacts with their iPhone apps — or face removal from the app store,…
Article word count: 581
HN Discussion: https://news.ycombinator.com/item?id=19109027
Posted by jbegley (karma: 4398)
Post stats: Points: 126 - Comments: 68 - 2019-02-07T22:02:39Z
\#HackerNews #app #apple #code #developers #disclose #recording #remove #screen #tells
Apple is telling app developers to remove or properly disclose their use of analytics code that allows them to record how a user interacts with their iPhone apps — or face removal from the app store, TechCrunch can confirm.
In an email, an Apple spokesperson said: “Protecting user privacy is paramount in the Apple ecosystem. Our App Store Review Guidelines require that apps request explicit user consent and provide a clear visual indication when recording, logging, or otherwise making a record of user activity.”
“We have notified the developers that are in violation of these strict privacy terms and guidelines, and will take immediate action if necessary,” the spokesperson added.
It follows an investigation by TechCrunch that revealed major companies, like Expedia, Hollister and Hotels.com, were using a third-party analytics tool to record every tap and swipe inside the app. We found that none of the apps we tested asked the user for permission, and none of the companies said in their privacy policies that they were recording a user’s app activity.
Even though sensitive data is supposed to be masked, some data — like passport numbers and credit card numbers — was leaking.
Glassbox is a cross-platform analytics tool that specializes in session replay technology. It allows companies to integrate its screen recording technology into their apps to replay how a user interacts with the apps. Glassbox says it provides the technology, among many reasons, to help reduce app error rates. But the company “doesn’t enforce its customers” to mention that they use Glassbox’s screen recording tools in their privacy policies.
But Apple expressly forbids apps that covertly collect data without a user’s permission.
TechCrunch began hearing on Thursday that app developers had already been notified that their apps had fallen afoul of Apple’s rules. One app developer was told by Apple to remove code that recorded app activities, citing the company’s app store guidelines.
“Your app uses analytics software to collect and send user or device data to a third party without the user’s consent. Apps must request explicit user consent and provide a clear visual indication when recording, logging, or otherwise making a record of user activity,” Apple said in the email.
Apple gave the developer less than a day to remove the code and resubmit their app or the app would be removed from the app store, the email said.
When asked if Glassbox was aware of the app store removals, a spokesperson for Glassbox said that “the communication with Apple is through our customers.”
Glassbox is also available to Android app developers. Google did not immediately comment if it would also ban the screen recording code. Google Play also expressly prohibits apps from secretly collecting device usage. “Apps must not hide or cloak tracking behavior or attempt to mislead users about such functionality,” the developer rules state. We’ll update if and when we hear back.
It’s the latest privacy debacle that has forced Apple to wade in to protect its customers after apps were caught misbehaving.
Last week, TechCrunch reported that Apple banned Facebook’s “research” app that the social media giant paid teenagers to collect all of their data.
It followed another investigation by TechCrunch that revealed Facebook misused its Apple-issued enterprise developer certificate to build and provide apps for consumers outside Apple’s App Store. Apple temporarily revoked Facebook’s enterprise developer certificate, knocking all of the company’s internal iOS apps offline for close to a day.
Many popular iPhone apps secretly record your screen without asking
HackerNewsBot debug: Calculated post rank: 106 - Loop: 54 - Rank min: 100 - Author rank: 208
What is your specialty/tech stack? How have you gotten around age discrimination? How do you suss out whether a company is right for you?
(I'm in my late twenties but I'm very curious to hear all your experiences.)
HN Discussion: https://news.ycombinator.com/item?id=19100129
Posted by kevintb (karma: 212)
Post stats: Points: 117 - Comments: 109 - 2019-02-06T21:23:47Z
\#HackerNews #age #aged #around #ask #developers #discrimination #gotten #have #how #you
HackerNewsBot debug: Calculated post rank: 114 - Loop: 84 - Rank min: 100 - Author rank: 23
This morning, a popular Stack Overflow question hit a major milestone:
Article word count: 902
HN Discussion: https://news.ycombinator.com/item?id=19069526
Posted by ktr (karma: 140)
Post stats: Points: 89 - Comments: 83 - 2019-02-03T13:48:05Z
\#HackerNews #2017 #developers #exit #helping #million #one #overflow #stack #vim
This morning, a popular Stack Overflow question hit a major milestone:
You’re not alone, jclancy. In the five years since this question was asked, there have been over a million other developers who got stuck in Vim and couldn’t escape without a bit of help. Indeed, the difficulty of quitting the Vim editor is a common joke among developers.
I’ve been told by experienced Vim users that this reputation is unfair, and I’m sure they’re right (even I’ve gotten the hang of it in the last few years). I think there are two reasons it’s easy to forget how to exit Vim: developers are often dropped into Vim from a git command or another situation where they didn’t expect to be, and they run into it infrequently enough to forget how they solved it last time.
In honor of this milestone, we decided to take a look at the data surrounding this question. In particular, we’ll try measuring who is most likely to get stuck in Vim as opposed to using it intentionally, and examining how that balance varies by country and by programming language.
How many people have been struggling to exit Vim?
In the last year, How to exit the Vim editor has made up about .005% of question traffic: that is, one out of every 20,000 visits to Stack Overflow questions. That means during peak traffic hours on weekdays, there are about 80 people per hour that need help getting out of Vim.
Has the percentage of traffic it makes up changed over time? That is, have developers started learning to exit Vim on their own?
It doesn’t look like it. The question was asked in August 2012, and for a few months it got very little traffic. Then it began growing in the following two years, presumably as more sources linked to it online and it moved to the top of search engine results. It’s been relatively steady for the last two years. This doesn’t necessarily mean the same people visited it again and again, of course; it could represent relatively new programmers getting stuck in Vim for the first time.
Differences across countries
As we saw in a previous blog post, we can use Stack Overflow traffic to learn a lot about the geographical distribution of developers.
Let’s consider what percentage of visits to Vim this question comprises within each country. In countries with a lot of experienced Vim users, we’d expect this percentage to be low. When it’s high, it indicates many users got stuck in Vim when they didn’t necessarily expect to.
It looks like developers in Ukraine, Turkey and Indonesia are getting stuck in Vim quite a bit: it makes up a larger portion of their Vim questions than in any other country. In contrast, in China, Korea and Japan the fraction going to this question is one-tenth as much. That might indicate that when developers in these countries enter Vim, they usually meant to do so, and they know how to get out of it.
What kind of programmers get stuck in Vim?
It’s also likely that users of different programming languages will have different experiences with Vim. We can investigate this by stratifying the “Exit Vim / Total Vim” percentage across each user’s main programming technology.
We’ll define this based on what Stack Overflow tag they visit most often. (For instance, my most visited tag is R: it makes up 52% of my question views). It’s not a perfect measure, but it’s reliable enough to give a sense of the breakdown by language. (For this analysis, we considered only registered users with at least 100 visits to the site).
The developers who are most likely to get stuck in Vim are front-end web developers: those who primarily visit tags like JQuery, CSS, and AngularJS. They’re followed by Microsoft developers (C# and SQL Server) and mobile (Android and iOS). These developers usually work with an IDE (Visual Studio, Eclipse, Xcode, and so on), rather than a plain text editor, so it makes sense that they’re relatively more likely to get “stuck” in Vim rather than to open it intentionally.
The developers least likely to get stuck in Vim are those who program in C, C++, Python and Ruby. These languages make sense to me: they are a combination of low-level languages and scripting languages that are often used with a plain text editor rather than an IDE, so they have the experience to escape it without a Google search.
I was amused when I saw this question approach a million visits, but I was also proud that I work for, and contribute answers to, a site that helps so many developers. You never know when an answer you contribute could help millions of people, whether it shares how to undo a git commit or how the yield keyword in Python works.
If you want to contribute yourself, we encourage you to join the world’s largest developer community, whether it’s to ask and answer questions, get your next job, or build your online presence with a Developer Story. You can also use tools like Stack Overflow Trends to learn more about what our data can tell you about software developers.
In any case, next time you solve your problem through Stack Overflow, remember the hundreds of thousands of users who regularly ask, answer, edit, and moderate the site to make it all possible.
HackerNewsBot debug: Calculated post rank: 87 - Loop: 80 - Rank min: 80 - Author rank: 18
Dear web developers, First of all, thanks for taking time to set the background color for your web pages and form elements. The light grey or is so much more pleasant than the default glaring white…
Article word count: 211
HN Discussion: https://news.ycombinator.com/item?id=19055312
Posted by luuio (karma: 113)
Post stats: Points: 111 - Comments: 103 - 2019-02-01T16:11:35Z
\#HackerNews #color #dear #developers #font #set #the #too #web
Dear web developers,
First of all, thanks for taking time to set the background color for your web pages and form elements. The light grey or is so much more pleasant than the default glaring white color.
Though, that might be a problem for some users, especially those with a default dark theme on their systems. Let me demonstrate with some screenshots. Iʼll pick on Facebook first:
Facebook form on dark theme
What about the Dropbox login form?
Dropbox login form on dark theme
Google dictionary form on dark theme
Twitter 2FA form?
Twitter 2FA form on dark theme
You get the idea. The cases Iʼve shown here either set the background color without setting the text color, or vice versa.
I understand that this is like one of those accessiblity things, where it wouldnʼt matter to most of your traffic--and youʼve got much bigger fish to fry. Though hopefully this article would come up in your head the next time you type background-color or font-color in your CSS file. And if you have a few moments to spare, I propose one of thse three options:
\* Set the both the background color AND font color for your CSS selector, or \* Donʼt set the colors at all, let the browser use the system default color, or * Add yet another /* TODO */ in your codebase and call it a day. JK :-).
HackerNewsBot debug: Calculated post rank: 108 - Loop: 394 - Rank min: 100 - Author rank: 22
A lot of game developers say they want to unionize -- but will they?
Article word count: 679
HN Discussion: https://news.ycombinator.com/item?id=18991086
Posted by toufiqbarhamov (karma: 2066)
Post stats: Points: 105 - Comments: 106 - 2019-01-24T17:58:47Z
\#HackerNews #developers #game #half #nearly #unionize #want
MoviePass is planning to relaunch an unlimited movie plan
SoundCloud is losing its second and final co-founder
Tech companies spent more than $64 million on lobbying in 2018
Nearly half of game developers want to unionize
Jaguar tests self-driving cars that project their next move
Blue Originʼs latest New Shepard test flight hauled NASA experiments
The Polestar 2ʼs infotainment system is powered by Google
— Game Workers Unite UK (@GWU_UK) December 14, 2018
With all of this conversation swirling around studio life, the folks behind the Game Developers Conference added new questions to the seventh annual State of the Industry Survey, which included responses from nearly 4,000 developers. The questions were broad: should the games industry unionize, and will the games industry unionize? Forty-seven percent of respondents said yes, game developers should unionize, while 16 percent said no and 26 percent said maybe.
However, developers werenʼt exactly hopeful about unionization efforts. Just 21 percent of respondents said they thought the industry would unionize, and 39 percent said maybe. Twenty-four percent said it simply wasnʼt going to happen. One developer added the following thought: "There is too much supply: too many people want into the industry. Those who unionize will be shoved out of the way as companies hire those with fewer demands."
The survey found 44 percent of developers (from hobbyists to AAA) worked more than 40 hours per week on average. It also included a question about the maximum number of hours developers had worked in a single week over the past year. Just over 1 percent said they worked more than 110 hours in a week, while 6 percent reported working 76 to 80 hours, "suggesting that deadline-related crunch can go far beyond normal working hours," according to the survey.
Epic Games Store
GDC executive vice president Simon Carless told Engadget the survey team added the unionization questions because developers were asking for them.
"Since this is the first time weʼve started asking about the support for unionization among developers, we canʼt say for sure what the trajectory of support may or may not be," Carless said. "But we have seen a keen interest in discussing unionization from the game developer community. This is reflected in the fact that we now have a number of sessions that will be addressing the topic."
GDC 2019 kicks off on March 18th and Game Workers Unite will be there, alongside labor union organizers from other industries, starting conversations and getting folks involved.
"We have seen a keen interest in discussing unionization from the game developer community."
This yearʼs State of the Industry Survey collected a handful of other new statistics, including some dedicated to Steam and its fresh competition. The Epic Games Store went live in December, offering developers a revenue share of 88 percent, compared with Steamʼs long-standing offer of 70 percent. The new Discord store joined the party a few days later, promising developers 90 percent of all revenue generated by their game sales.
Steam has dominated the digital distribution market for roughly a decade, setting standards and making plenty of developersʼ dreams come true. However, Steam has become crowded, and the market is ripe for innovation and competition. Unsurprisingly, 47 percent of GDC survey respondents said they sold their games on Steam. Of those developers, 54 percent said Steam accounted for at least three-quarters of their total sales revenue; other storefronts generated less than 10 percent of overall revenue for most developers.
Hereʼs the juicy bit: The 2019 GDC survey also asked developers whether Steamʼs 30 percent cut was justified. Just 6 percent of respondents said yes. Roughly one-third of respondents said Steamʼs revenue-sharing model didnʼt make sense, 27 percent said it probably didnʼt, and 17 percent said they werenʼt sure.
One respondent offered the following advice for Steam: "Take less revenue from sales and curate their store better for visibility for real games."
In this article: av, business, discord, epicgamesstore, GameDevelopment, gaming, gdc, indie, personal computing, personalcomputing, steam, survey, tomorrow, union
[IMG]By Jessica Conditt @JessConditt
Jessica earned her BA in journalism from ASUʼs Walter Cronkite School in 2011, and sheʼs written for online outlets since 2008, with four years as senior reporter at Joystiq. She specializes in covering independent video games and esports, and she strives to tell human stories within the broader tech industry. Jessica is also a sci-fi novelist with a completed manuscript floating through the mysterious ether of potential publishers.
Yamahaʼs Sonogenic keytar is equal parts instrument and party trick
Amazonʼs all-female NFL commentary team will return next season
Andrea Kremer and Hannah Storm will again call ‘Thursday Night Football’ games.
HackerNewsBot debug: Calculated post rank: 105 - Loop: 80 - Rank min: 100 - Author rank: 58
Retro game engine for developers that enjoy creating games like it's 1997. - klaussilveira/qengine
Article word count: 43
HN Discussion: https://news.ycombinator.com/item?id=18886022
Posted by openbasic (karma: 172)
Post stats: Points: 157 - Comments: 64 - 2019-01-11T19:16:37Z
\#HackerNews #1997 #creating #developers #engine #enjoy #for #game #games #its #like #retro #that
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.
HackerNewsBot debug: Calculated post rank: 126 - Loop: 199 - Rank min: 100 - Author rank: 25
Use production-ready Bootstrap components from the multipurpose library grouped into 20 most frequently used categories.
Article word count: 111
HN Discussion: https://news.ycombinator.com/item?id=18821854
Posted by macinjosh (karma: 641)
Post stats: Points: 110 - Comments: 28 - 2019-01-04T03:57:51Z
\#HackerNews #bootstrap #builder #busy #developers #for
Drag & drop. Customize. Improve in your favourite IDE.
Use production-ready Bootstrap components from the multipurpose library grouped into 20 most frequently used categories.: [______________]
Components menu interface
Bootstrap styles panel
We have more than 500 Bootstrap variables in thematically connected categories to allow you to work effectively.
Bootstrap Shuffle provides sources for the tools developers know and love. When you select the appropriate components and Bootstrap settings, you can download source files in order to, e.g. start combining front-end with back-end.
HackerNewsBot debug: Calculated post rank: 82 - Loop: 274 - Rank min: 80 - Author rank: 37
Part 1: Steve loved performers, so he invited The Flying Karamazov Brothers to perform at Apple in 1985. He paid them via barter: they each got a Macintosh. They saw the grand piano in the lobby and …
Article word count: 1047
HN Discussion: https://news.ycombinator.com/item?id=18772263
Posted by GoRudy (karma: 439)
Post stats: Points: 144 - Comments: 40 - 2018-12-27T20:16:50Z
\#HackerNews #career #developers #hired #jobs #juggler #programming #steve #teach
\* Part 1: Steve loved performers, so he invited The Flying Karamazov Brothers to perform at Apple in 1985. He paid them via barter: they each got a Macintosh. They saw the grand piano in the lobby and met Susan Kare, the first artist hired in the computer industry and a legend. She works at Pinterest today. Randy Nelson loved computers and was swept away by the visit, but he had been performing with the troupe for 9 years as Alyosha. The troupe started in Santa Cruz performing on the street for gratuities. They eventually made it to Broadway stages and The Lincoln Center. Randy could never imagine where the performance at Apple would lead.
He has the blond braids in this photo:
[IMG]* Part 2: When Steve started NeXT, he began an annual tradition of a family picnic at the park. Since he loved circuses and performers, he made sure there was a stage and a group to perform. The first year I joined NeXT, we had the Pickle Family Circus there and our kids loved them. We could tell Steve did too. They had been an influence on Cirque du Soleil, whom Steve knew and admired.
Steve had asked The Flying Karamazov Brothers to perform before I joined NeXT. The story goes that they ended their performance by juggling flaming torches and Steve was so impressed he jumped up on the stage to tell them what a great performance it was. Randy responded by describing his idea of a great performance, and pulled his Macintosh out of its case, the one Steve had given him when they performed at Apple. He explained that the Mac with the signatures of the team inside was a great performance. Randy explained that he programmed it obsessively at night in hotels as they traveled. Steve was famous for hiring people with mastery of a field who also had broad interests, and thatʼs what he saw in Randy. When I joined NeXT, Randy was teaching object-oriented programming in Objective C to some of the best developers in the world, getting sky-high ratings for his classes. These were people like the Adobe Photoshop team, who were creating a version of Photoshop for NeXT machines.I was Director of Developer Relations, so the classes our instructors taught were in my group. I once asked Randy, “Why don’t you juggle in class? It would thrill and shock the class to find out their instructor was a world-class stage performer.”I will never forget his answer. He looked at me seriously and said, “Be careful what you ask an artist. It would take me two weeks of preparation.” Whoa. Nevermind, Randy. Here’s a variation of their flaming torch routine. Randy is on the left with the long blond hair: IFrame
* Part 3: NeXT and Pixar went through some rough years and I thought neither company would make it. All eight of the original team at NeXT aside from Steve, including Randy’s heroine Susan Kare, had left. We had been driven out of hardware, so Steve’s dream of running a computer company was over forever, or so we thought. Pixar had also been driven out of hardware, had dabbled in selling 3D rendering software through CompUSA, had dabbled in processing medical and satellite images, and had spent 10 years living payroll-to-payroll hoping Steve would continue to fund it from his own money.Steve sent me to Pixar one day to talk to Ed Catmull, its long-time president. It was a day Steve had instructed Ed to lay off half the company and if I remember, headcount had gone from something like 72 to 36. But Steve wanted to hold onto John Lassiter’s creative team.I remember how agonizing Ed’s sorrow was. The good news is Steve had committed another $10 million to keep Pixar alive, despite telling his accountant to stop him from pouring more money into it. Ed asked me if I thought this might be the last Steve would ever invest. I didn’t know.Sometimes I wonder if I dreamed the next part. I have vivid dreams like this. My memory says Ed asked if Steve was pitching a movie to Disney. I said I thought he was. Jeff Katzenberg had been there. Ed said I should tell him they can’t make a full-length movie, it’s too much. He wanted me to tell Steve they could do an episode for Disney TV, but not a movie. I told Ed you know how it is with Steve, and he nodded.
Steve got his contract from Disney and as we know from the books, it was a struggle for years to make Toy Story. Randy left NeXT for a stint at Kaleida labs as developer trainer, but when Apple bought NeXT, they hired Randy. It was rough there too, but I’m told Randy stayed a beacon of positive energy. There must be a lesson in that, because this happened after Randy had been at Apple two years: IFrame
* Last part: After 12 years of running Pixar University, in a company whose rise is so incredible no one could have dreamt it, and a 2-year stop at DreamWorks as head of their university, he landed back at Apple.
It’s astonishing what faculty Apple has hired to teach leadership and culture there — former professors at Harvard, Yale and Stanford business schools among them — who make as much as $1.7 million a year. Here’s the thing: I would rather listen to Randy about hiring and culture than any of them. See for yourself in one of his few public appearances, below. Here’s the summary: 1. You want to find people with mastery, true depth. 2. The problem is, that isn’t enough. You need people who had failed and recovered. The core skill of innovators is error recovery, not failure avoidance. 3. Breadth, meaning curiosity about things beyond what you’re deep in. 4. Collaboration. Not a synonym for cooperation, but the ability to magnify others. Hearing it from the master is 1000x better: IFrame
* @Chris thank you for sharing this amazing story!
* Ha! The things you find on YouTube. They put a blue oxford-cloth shirt on Randy at NeXT and had him film a corporate video to explain object-oriented programming. But they didnʼt chop off his ponytail. 😁
Looks like they had him demo on an Intel-powered machine after we did the dramatic deal with Andy Grove that probably saved NeXT: IFrame
HackerNewsBot debug: Calculated post rank: 109 - Loop: 140 - Rank min: 100 - Author rank: 91
Today, I’m excited to share that, for the first time, the same machine learning courses used to train engineers at Amazon are now arevailable to all developers through AWS. We’ve been using machine…
HN Discussion: https://news.ycombinator.com/item?id=18534155
Posted by ydereky (karma: 218)
Post stats: Points: 234 - Comments: 30 - 2018-11-26T15:54:07Z
\#HackerNews #all #amazons #available #developers #learning #machine #now #own #university
Today, I’m excited to share that, for the first time, the same machine learning courses used to train engineers at Amazon are now arevailable to all developers through AWS.
We’ve been using machine learning across Amazon for more than 20 years. With thousands of engineers focused on machine learning across the company, there are very few Amazon retail pages, products, fulfillment technologies, stores which haven’t been improved through the use of machine learning in one way or another. Many AWS customers share this enthusiasm, and our mission has been to take machine learning from something which had previously been only available to the largest, most well-funded technology companies, and put it in the hands of every developer. Thanks to services such as Amazon SageMaker, Amazon Rekognition, Amazon Comprehend, Amazon Transcribe, Amazon Polly, Amazon Translate, and Amazon Lex, tens of thousands of developers are already on their way to building more intelligent applications through machine learning.
Regardless of where they are in their machine learning journey, one question I hear frequently from customers is: “how can we accelerate the growth of machine learning skills in our teams?” These courses, available as part of a new AWS Training and Certification Machine Learning offering, are now part of my answer.
There are more than 30 self-service, self-paced digital courses with more than 45 hours of courses, videos, and labs for four key groups: developers, data scientists, data platform engineers, and business professionals. Each course starts with the fundamentals, and builds on those through real-world examples and labs, allowing developers to explore machine learning through some fun problems we have had to solve at Amazon. These include predicting gift wrapping eligibility, optimizing delivery routes, or predicting entertainment award nominations using data from IMDb (an Amazon subsidiary). Coursework helps consolidate best practices, and demonstrates how to get started on a range of AWS machine learning services, including Amazon SageMaker, AWS DeepLens, Amazon Rekognition, Amazon Lex, Amazon Polly, and Amazon Comprehend.
New AWS Certification for Machine Learning
To help developers demonstrate their knowledge (and to help employers hire more efficiently), we are also announcing the new “AWS Certified Machine Learning – Specialty” certification. Customers can take the exam now (and at half price for a limited time). Customers at re:Invent can sit for the exam this week at our Training and Certification exam sessions.
The digital courses are now available at no charge at aws.training/machinelearning and you only pay for the services you use in labs and exams during your training.
–Dr. Matt Wood, General Manager of Artificial Intelligence, AWS
HackerNewsBot debug: Calculated post rank: 166 - Loop: 144 - Rank min: 100 - Author rank: 87
Two weeks ago, I woke up one morning with slightly blurry vision and a big, opaque, dark circle getting in the way of many things (especially if I close my right eye). Visited the doctor and I'm told that I have macular degeneration in my right eye and a retina problem in my left eye. It's surprising because I'm not yet 40. Doctor said I won't go blind and prescribed me some medicine for an initial treatment. I'm now looking into treatment options and researching this. I am supposed to go back to the doctor soon for a checkup. The dark circle has never left me; in fact, it's now been joined by a transparent, shimmering circle.
I'm not worried about going blind based on the doctor's opinion, but I am concerned that I will have to deal with long-term vision issues. Currently, I cannot read the text on my screen if I close my right eye, as the dark circle gets in the way of everything.
It left me with an interesting question. I'd read about blind people working as developers and sysadmins before. But I never really thought about it, because my vision was so good. I'm curious now, depending on how bad my eyes get, how would I transition so that I'd be able to continue my chosen profession? Are there blind developers and sysadmins here who can toss a few resources my way?
Much appreciated to the HN community in advance, thanks. I'm currently based in Asia, so about to sleep soon, hopefully I'll wake up with a big load of comments to read. ;)
HN Discussion: https://news.ycombinator.com/item?id=18522497
Posted by PakG1 (karma: 4175)
Post stats: Points: 146 - Comments: 29 - 2018-11-24T15:45:38Z
\#HackerNews #and #ask #blind #developers #for #resources #sysadmins
HackerNewsBot debug: Calculated post rank: 107 - Loop: 237 - Rank min: 100 - Author rank: 28
And how did you manage to solve the problem?
HN Discussion: https://news.ycombinator.com/item?id=18265177
Posted by oldboyFX (karma: 573)
Post stats: Points: 67 - Comments: 70 - 2018-10-20T20:11:27Z
\#HackerNews #ask #developers #experience #founders #had #the #what #with #worst #you
HackerNewsBot debug: Calculated post rank: 68 - Loop: 209 - Rank min: 60 - Author rank: 42
Is there anyone of you at the Chaos Communication Congress in Leipzig this year right after Christmas? Is there anyone interested to have a meeting there?
Just some exchange, we would need some people to moderate the event, but basically some meetup to exchange information and get to know other players in the field.
"Someone" could then register a "talk" or "meetup" for the upcoming congress, I'd say a duration of about 1.5 to 2 hours and maybe 60+ people can be expected, assuming there is many #webmasters or #developers among the visitors at the #35C3.
Any #devs and #webmaster of the following systems, or any that I might have missed that are using #ActivityPup and can communicate with the others, please comment here if you like the idea!
#Friendica #Diaspora #red #Hubzilla #GnuSocial #StatusNet #Mastodon #Pleroma #Socialhome #Ganggo
Let me know if you have any questions.
Article word count: 43
HN Discussion: https://news.ycombinator.com/item?id=18227837
Posted by alexgrcs (karma: 200)
Post stats: Points: 176 - Comments: 17 - 2018-10-16T09:05:21Z
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.
HackerNewsBot debug: Calculated post rank: 123 - Loop: 218 - Rank min: 100 - Author rank: 40
HN Discussion: https://news.ycombinator.com/item?id=18192534
Posted by macca321 (karma: 536)
Post stats: Points: 129 - Comments: 48 - 2018-10-11T11:24:35Z
\#HackerNews #and #are #ask #developers #ex-faang #now #where #why #you
HackerNewsBot debug: Calculated post rank: 102 - Loop: 122 - Rank min: 80 - Author rank: 17
I already started on the macOS app (written in #Swift), but I need help polishing the UI and packaging it up. For the Windows app, I'm not sure where to start. So I'm looking for #developers that can help with either!
If you're interested, feel free to send me a message. Otherwise please pass it along to anyone you know!
Also, these are paid #FOSS projects. All code will be #GPL-licensed.