I got PT Mono in the game, but this gave me the kick I needed to remember about ProggyClean[1] and track it down. Used to love it many years ago, time to give it another spin and see if it holds its own.
I love taking notes by hand for better retention, but (my) longhand is just too slow. It's also an inconvenient format for representing a hierachy or graph of connections.
Anyone else into what my high school biology teacher loved referring to as "pseudo-arachnomorphic diagrams" (Mind Maps[1] / Spider Diagrams)?
They're still my primary paper-based realtime note taking method. They seemed to get a lot of attention a couple of decades ago, but I don't hear them mentioned much recently.
Lots of online/local Mind Map tools available, but I've never really gelled with them (though you do get self-organisation of the nodes!). Once in the digital realm I'm more likely to make notes in Markdown.
The slowness is a feature, not a bug. It gives your brain time to chew on it a little bit, digesting the information and storing it away instead of just copy-pasting.
Speed-hacks like shorthand and stenographers' machines are for copying exactly what was said, not consuming and understanding it. I would be very surprised if there were not very old studies moldering in a paper journal somewhere investigating the information retention of secretaries / stenographers compared to "naive" note-takers.
I recently started journaling by hand and was somewhat frustrated with the excruciatingly slow speed versus typing. Eventually, I realized that the slowness was, as you said, a feature. It forces you to think. You have no choice but to take time with your words. Sometimes brevity is a gift (one I usually don't have).
I migrated to fountain pens and haven't looked back. Partially, it's because I enjoy the experience itself as much as writing, but partially it's because they've forced me to become even more deliberate.
Same principle applies to, e.g., Leica cameras. Yes, they're pricey (absurdly so), but the lack of features, the slow speed, and the lack of configuration contributes to me improving my photography. It doesn't make me a better photographer, but it gives me the time and space to focus on being one, rather than just firehosing my camera at whatever is in front of me. It makes my photography intentional rather than reactive.
A sidenote along these lines - I've recently done an MSc, and found that the default approach to lectures is now to present slide decks. One of the profs, however, delivers a more traditional lecture, writing everything on a blackboard. I've found the second style far more effective, largely because writing caps the rate at which information can be conveyed. Because slides have no such bottleneck, I've found they're often misused and overladen with information which is skipped over too quickly.
It gives your brain time, but reality may not give you that time.
Someone who is typing a fast paced one time lecture, who can then take their time afterward to digest, is going to do much better than the "slowness is a feature" hand writer.
I've seen this first-hand with people taking handwritten notes in meetings
+1 Deciding what to write is the critical step. You can get it with careful typing, but it's harder because you can type fast enough to skip that step.
The learning curve is very gentle, you could learn it in a day. Honestly the hardest part is getting used to reading it fluently.
You can also look into various systems of abbreviations developed for telegraph (Evans basic English code), or you could look into using Yublin, which is basically taking all 2-letter combinations and assigning the most common 676 English words to them. Personally I like the idea of Yublin, with the addition of suffixes to modify common words so the word "add" might be "ad" in Yublin, but to make it "addition" you might turn it into "adn" and to further modify it to "additionally" you could write "adnly". This way you get more words out of your limited number of bigrams instead of polluting it with a word plus all it's commonly used variations. Write that shit in Orthic and you'll be flying.
> Anyone else into what my high school biology teacher loved referring to as "pseudo-arachnomorphic diagrams" (Mind Maps[1] / Spider Diagrams)?
Yes! Nearly all my notes are mind-map-ish. I’m a visual thinker/planner with ADHD and mind-map style “spatial notes” are the only ones that make sense to me when writing and reviewing later. I’ve tried a few methods of moving this process to digital over the years but nothing sticks like pen & paper.
Thanks, though I think part of longhard feeling labourious these days is RSI sadly. I did try to correct my scrawl for effort and legibility a while ago, but it just wouldn't stick!
I had pretty terrible RSI (and even more terrible handwriting) and could write much without cramping up or pain. What helped for me was teaching myself proper cursive and fountain pens. Rather than clutching a ballpoint and marking with jerky finger/wrist movements, I now use my arm for larger movements and let the pen glide. It’s helped tremendously. It’s slow going at first but keep at it. Plus fountain pens are pretty fucking cool. Also, paper matters too; but paper and notebooks are another fun rabbit hole.
A related interesting fact is that small angular motions compose almost like vectors, order does not matter (i.e. they are commutative). This makes differential kinematics easier to deal with when dealing with polar or cylindrical coordinate systems.
Large angular deflections while being linear transforms, do not in general commute.
It will spoil the linear relation in your elegant expression, but a slightly better approximation for cos for small θ is
- Analyze users’ needs and then design and develop software to meet those needs
Recommend software upgrades for customers’ existing programs and systems
Design each piece of an application or system and plan how the pieces will work together
- Create a variety of models and diagrams showing programmers the software code needed for an application
- Ensure that a program continues to function normally through software maintenance and testing
- Document every aspect of an application or system as a reference for future maintenance and upgrades
Ignoring the sentence that admits they can be the same ("Programmers work closely with software developers, and in some businesses their duties overlap.").
Programmers is like a translator; somebody else came up with what to do and you're doing the mechanical work of converting words into C++.
Programmer as defined here, in my experience, is a job that has never really existed. Sure, they've tried many times to create this divide - going back to the beginning of programming (originally considered secretarial work) - but ultimately programmer is still making many design decisions when typing out code.
Programmers often are grouped into two broad types: Applications programmers and systems programmers. Applications programmers usually are oriented toward business, engineering, or science. They write software to handle specific jobs, such as a program used in an inventory control system or one to guide a missile after it has been fired. They also may work alone to revise existing packaged software. Systems programmers, on the other hand, maintain the software that controls the operation of an entire computer system. These workers make changes in the sets of instructions that determine how the central processing unit of the system handles the various jobs it has been given and communicates with peripheral equipment, such as terminals, printers, and disk drives. Because of their knowledge of the entire computer system, systems programmers often help applications programmers determine the source of problems that may occur with their programs.
Programmers write programs according to the specifications determined primarily by computer software engineers and systems analysts. (Separate statements on computer software engineers and on computer systems analysts, database administrators, and computer scientists appear elsewhere in the Handbook.) After the design process is complete, it is the job of the programmer to convert that design into a logical series of instructions that the computer can follow. ... In practice, programmers often are referred to by the language they know, as are Java programmers, or the type of function they perform or environment in which they work, which is the case for database programmers, mainframe programmers, or Web programmers.
Software engineers working in applications or systems development analyze users’ needs and design, construct, test, and maintain computer applications software or systems. Software engineers can be involved in the design and development of many types of software, including software for operating systems and network distribution, and compilers, which convert programs for execution on a computer. In programming, or coding, software engineers instruct a computer, line by line, how to perform a function. They also solve technical problems that arise. Software engineers must possess strong programming skills, but are more concerned with developing algorithms and analyzing and solving programming problems than with actually writing code. (A separate statement on computer programmers appears elsewhere in the Handbook.)
Pre-dot com boom it was lumped together with a small call out to "application" vs "system". With the dot com boom, the more senior role of "computer software engineer" was described while the pejoratively described "code monkey" was the "computer programmer".
That distinction between the two may not exist today. However, it takes a long time for those things to change.
May look the same as a worker but if you're a corporation hiring an H1B worker the difference between computer programmer and software developer is a notable difference in the budget bylines.
In older distinctions, there were Systems Developers and Application Developers and Computer Programmers. The distinction largely was around that "Computer Programmers took the specifications from Developers and implemented them."
It feels like the intent was that "Programmers" were the ones doing the routine / lower skill tasks while the Developers were the ones that did the specification and architecture.
Those got juggled around and largely people getting listed as "Computer Programmer" is going down as the company relists them as Software Developer.
This is also part of the confusion of "Web Developer" which is also in there.
It reflects what government thought management thought title and roles were some years ago.
15-1132 Software Developers, Applications
Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team. May supervise computer programmers.
15-1133 Software Developers, Systems Software
Research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications. Set operational specifications and formulate and analyze software requirements. May design embedded systems software. Apply principles and techniques of computer science, engineering, and mathematical analysis.
15-1131 Computer Programmers
Create, modify, and test the code, forms, and script that allow computer applications to run. Work from specifications drawn up by software developers or other individuals. May assist software developers by analyzing user needs and designing software solutions. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.
Note that the specifying part of it isn't done by the programmers but the other roles.
15-1134 Web Developers
Design, create, and modify Web sites. Analyze user needs to implement Web site content, graphics, performance, and capacity. May integrate Web sites with other computer applications. May convert written, graphic, audio, and video components to compatible Web formats by using software designed to facilitate the creation of Web and multimedia content. Excludes "Multimedia Artists and Animators" (27-1014).
Right, I'm a Computer Programmer but any job with that title is likely horrible. But having the title Software Engineer doesn't magically make me an engineer. All word games.
They're saying that programmers will be declining. While Developers, and crucially, Testers and QA people will be increasing. That testers and QA become more important in the future sounds plausible to me in a future hypothetical world of ubiquitous AI.
All of that doesn't necessarily imply that the Developer class of employees will grow at the same rate as the Tester and QA classes of employees.
The BLS classifies them as different roles. In essence: Software developers plan, computer programmers implement. Which in many cases might be the same person, but it has always been true that one person can hold multiple jobs.
That's not a distinction that actually exists in the real world. This makes me wonder what other made-up distinctions they are claiming in industries I'm less familiar with.
I've seen it. I personally think it is ill-conceived and I am not sure why any business would actually want to function that way, but it definitely exists. Of software developers and computer programmers combined, only around 5% are considered to be computer programmers, so it is already recognized in the data as something fairly unusual.
There's a vector version[2] now too!
[1]: http://proggyfonts.net/
[2]: https://github.com/bluescan/proggyfonts/tree/master/ProggyVe...
reply