In particular, it allowed for organizing common traits (such as extensibility, or different ways of showing examples as schemas that can be mixed in to the main object definitions.
- Sep 2022
-
github.com github.com
-
-
stackoverflow.com stackoverflow.com
-
Incidentally, I am also the author of the website you are referring to.
-
[author of the draft v4 validation spec here]
-
-
blog.saeloun.com blog.saeloun.com
-
www.zylstra.org www.zylstra.org
-
If you need a site that’s just a single page I think I would use a word processor and do a “save as html”.
-
- Aug 2022
-
share.unison-lang.org share.unison-lang.org
-
when you start with something simple but special purpose, it inevitably accretes features that attempt to increase its generality, as users run into its limitations. But the result of this evolutionary process is usually a complicated mess compared to what could be achieved by designing for generality up-front, in a more holistic way.
I think this is true, but it's often difficult to design generality upfront. A nice approach is making sure that you are able to back into it and modify after the fact.
We should be trying to make our technologies have more "two-door" decisions.
-
-
bookdown.org bookdown.org
-
Which software package have you used before? Please list some pros and cons of that software package.
-
-
-
a MIT style license, which does not require the notices to be reproduced anywhere outside of the actual library code.
-
-
blog.dshr.org blog.dshr.org
-
The lack of CPU power in those days also meant there was deep skepticism about the performance of interpreters in general, and in the user interface in particular. Mention "interpreted language" and what sprung to mind was BASIC or UCSD Pascal, neither regarded as fast.
still widely held today
-
-
support.apple.com support.apple.com
-
Import notes on your iPhone, iPad, or iPod touch You can import Evernote Export files (.enex files) to Notes on your iPhone, iPad, or iPod touch. Each .enex file can include one or many notes. When you import an .enex file, each note from Evernote will be converted to a new note in Notes. Before you import to your Notes app, send yourself the .enex file via email or save it to iCloud Drive from your computer. Use Mail Open Mail and tap the email with the file that you want to import to Notes. Touch and hold the file, tap Share, then tap Notes. After your file downloads, you get a confirmation message. Tap Import Notes. Use the Files app Open the Files app and go to the file that you want to import to Notes. Touch and hold the file, tap Share, then tap Notes. After your file downloads, you get a confirmation message. Tap Import Notes. When you open the Notes app and select your iCloud notes, a new folder appears called Imported Notes. If you're not using Notes with iCloud, the new folder appears in the On My Device notes.
Stumbling across obscure/obscured shit like this in these operating systems used to be legitimately fun but uh... Well, it's been a while.
It works ridiculously well though! As in, the import process can handle far too many notes far too quickly for the device's actual ability to index them lol.
-
-
techcommunity.microsoft.com techcommunity.microsoft.com
-
Well I would like to express my huge concern regarding the withdrawal of support for the SMB 1.0 network protocol in Windows 11, and future versions of the Microsoft OS, as there are many, many users who need to make use of this communication protocol, especially users households, since there are hundreds of thousands of products that use the embedded Linux operating system on devices that still use the SMB 1.0 protocol, and many devices, such as media players and NAS, that have been discontinued and companies no longer update their firmware.
-
-
www.software.ac.uk www.software.ac.uk
-
we can’t know what trivial change to the environment might stop the experiment working, or (worse) make it appear to work but actually have a major change in it
"can't is too strong a word here"
-
The more I think about it, the less I think there is a meaningful definition of the one true run time. I have put significant effort into making sure that runtimes are consistent but, however we do this, it makes our experiments less realistic. With rare exceptions (perhaps some safety critical systems) our algorithms will not be used in highly controlled situations, moderated to reduce variability between runs or to maximise speed of this particular process. Algorithms will be run as part of a larger system, in a computer sometimes with many other processes and sometimes with few and, because of the way that computing has developed, sometimes in raw silicon and sometimes in virtual machines. So the more I think about it, the more I think that what matters is the distribution of run times. For this, your experiment on your hardware is important, but so are future recomputations on a wide variety of VMs running on a variety of different hardware.
The truth of this has consequences not just for the metaissue of recomputation, but the entire raison d'etre of doing performance studies to begin with.
-
If I can’t run your experiment at all, then I can’t reproduce your times.
"The greatest performance improvement of all is when a system goes from not-working to working"
-
-
dercuano.github.io dercuano.github.io
-
The idea here is to emulate the hardware platform WordPerfect ran on
That seems like unnecessarily tight coupling. Surely there's a better level of abstraction that's higher than "emulate the hardware platform".
-
-
hypercore-protocol.org hypercore-protocol.org
Tags
Annotators
URL
-
-
en.itpedia.nl en.itpedia.nl
-
5 ERP system examples (who benefits from ERP?)
The term EnterpriseResourcePlanning (ERP) system refers to a large number of integrated softwaresuites used by companies to manage day-to-day operations and business workflows, including datamanagement, inventory control, accounting, CRM, and projectmanagement. Thus, in order to remain an effective contender in an era of digital commerce, ERP_systems are an important part of the business information technology infrastructure.

-
- Jul 2022
-
julian.bearblog.dev julian.bearblog.dev
-
#Software #Hardware #Technology #Programming #Internet #Web Development #Data #Beginner Tutorial #Computer Science #Computers #Engineering
-
-
www.jwz.org www.jwz.org
-
People only really contribute when they get something out of it. When someone is first beginning to contribute, they especially need to see some kind of payback, some kind of positive reinforcement, right away. For example, if someone were running a web browser, then stopped, added a simple new command to the source, recompiled, and had that same web browser plus their addition, they would be motivated to do this again, and possibly to tackle even larger projects.
-
-
help.twitter.com help.twitter.com
-
List management TweetDeck allows you to manage your Lists easily in one centralized place for all your accounts. You can create Lists in TweetDeck filtered by by your interests or by particular accounts. Any List that you have set up or followed previously can also be added as separate columns in TweetDeck. To create a List on TweetDeck: From the navigation bar, click on the plus icon to select Add column, then click on Lists .Click the Create List button.Select the Twitter account you would like to create the List for.Name the List and give it a description then select if you would like the List to be publicly visible or not (other people can follow your public Lists).Click Save.Add suggested accounts or search for users to add members to your List, then click Done. To edit a List on TweetDeck: Click on Lists from the plus icon in the navigation bar.Select the List you would like to edit.Click Edit.Add or remove List members or click Edit Details to change the List name, description, or account. You can also click Delete List.When you're finished making changes, click Done. To designate a List to a column: Click on the plus icon to select Add column.Click on the Lists option from the menu.Select which List you would like to make into a column.Click Add Column. To use a particular List in search: Add a search column, then click the filter icon to open the column filter options.Click the icon to open the User filter. Select By members of List and type the account name followed by the List name. You can only search across your own Lists, or others’ public Lists.
While you still can, I'd highly encourage you to use TweetDeck's "Export" List function to save plain text lists of the @ names in your... Lists.
-
-
www.matteomattei.com www.matteomattei.com
Tags
Annotators
URL
-
-
brandur.org brandur.org
-
The major benefit of foreign keys is that they guarantee referential integrity. For example, say you have customers in one table that may refer to a number of invoices in another. Without foreign keys, you could delete a customer, but forget to remove its invoices, thereby leaving a bunch of orphaned invoices that reference an customer that’s gone.
Note that GH doesn't use FK (at least back in 2016) https://github.com/github/gh-ost/issues/331#issuecomment-266027731 due to: * MySQL doesn't support it on partitioned tables * Performance impact. * FKs don't work well with online schema migrations
From Postgres has foreign keys to be fully compatible with partitioned tables since 12. But still it's not that commonly used for larger DBs.
-
If an operator ever queries the database directly they’re even more likely to forget deleted_at because normally the ORM does the work for them.
This happens relatively often, especially for 1) engineers that run SQL queries directly against the DB for analysis or triaging production issues, and 2) data scientists that do not use the same programming language as the enginners
Tags
Annotators
URL
-
-
bijutoha.substack.com bijutoha.substack.com
-
Photo editing must separate from the crowd and express your personality.The problem, however, is that there are several high-quality picture editors to pick from.
Lightroom, Luminar AI, and ON1 Photo RAW were mentioned in the list. These are RAW editors used before Photoshop. The shot is then brought into Photoshop (or another editor) for local modifications. Lightroom and Photoshop are used. Thanks!
-
-
www.bookstackapp.com www.bookstackapp.com
-
mentioned by Jim Groom as one of the most popular wiki software available on Github
BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information
Tags
Annotators
URL
-
-
bilge.world bilge.world
-
StarPterano I very vaguely remember happening upon StarPterano in my very first moments on Mastodon, so finding it still published on the App Store – buried as it was – brought me a particular sort of joy. If I’m not mistaken, it holds a special personal accolade as the only iOS app which has caused me to involuntarily shriek. This might sound like an insult, but it is actually the peak of my praise. I believe my knowledge of iOS development safely allows me to suppose that StarPterano was built with complete disregard for any established UI element libraries. That is, the familiar toggles and buttons developers rely on to standardize the iOS experience were cast aside entirely in favor of handbuilt, translucent buttons of a sort of neon quality which call menus and text entry fields no less alien to the platform. The most astonishing bit, though, is that it works. On my 12 Pro Max, it’s exceptionally smooth, in fact. I would imagine those real iOS developers among you should find StarPterano’s GitHub Repository particularly interesting, considering. In the interest of preservation, I have forked it as well, and fully intend to dive in to its code, one of these days. The audio player embedded above cites a three-second .mp3 file in the repository which perhaps once accounted for the “Sounds” toggle still found in the Settings menu of StarPterano’s current build. I couldn’t get the app to reproduce it, which is actually what set me on the hunt that led to the repo.
I shall always love you, StarPterano. NEVER DIE.
Tags
Annotators
URL
-
-
liliputing.com liliputing.com
-
I may be insane, but somehow text search here makes me wonder that Calibre might actually make an interesting interface for keeping one's notes?
Document management, text search, tagging, reference management capabilities, open source, custom meta data, server potential, etc. What's missing to prevent such an off-label use case?
Syndication link: https://twitter.com/ChrisAldrich/status/1547689914078179328
-
-
www.vpri.org www.vpri.org
-
Another key idea here is to separate meaning from tactics. E.g. the meaning of sorting is much simpler and more compact than the dozens of most useful sorting algorithms, each one of which uses different strategies and tactics to achieve the same goal. If the “meanings” of a program could be given in a way that the system could run them as programs, then a very large part of the difficulties of program design would be solved in a very compact fashion. The resulting “meaning code” would constitute a debuggable, runnable specification that allows practical testing. If we can then annotate the meanings with optimizations and keep them separate, then we have also created a much more controllable practical system.
Tags
Annotators
URL
-
-
media.museapp.com media.museapp.com
-
@18:52:
I wanna also dig a little more into the kind of... dynamism, ease-of-making-changes thing, because I think there's actually two ways to look at the ease of making changes when you solve a problem with software. One way is to make software sufficiency sophisticated so that you can swap any arbitrary part out and you can keep making changes. The other is to make the software so simple that it's easy to rewrite and you can just rewrite it when the constraints change.
-
-
-
www.mobindustry.net www.mobindustry.net
-
Point of sale software is someting that’s integral to modern retail. Learn how to build POS software of your own and make your business more efficient and convenient to both your staff and customers.
Point of sale software is someting that’s integral to modern retail. Learn how to build POS software of your own and make your business more efficient and convenient to both your staff and customers.
-
-
scattered-thoughts.net scattered-thoughts.net
-
Free as in ...? Points out that freedoms afforded by foss software to the average computer user are effectively the same as proprietary software, because it's too difficult to even find the source and build it, let alone make any changes. Advocates the foss developers should not think only about the things that users are not legally prevented from doing, but about what things they are realistically empowered and supported in doing.
Previously: Open Source Is Not Enough and Free software is not enough: on practical user freedom.
See also: "Even GNU's philosophy has a few puzzle pieces missing from the box."
-
-
scattered-thoughts.net scattered-thoughts.net
-
Here is how I produce invoices and contracts for consulting: Open an old invoice/contract in firefox. Use the inspector to change the values. Hit 'save as new file'.
-
-
notebook.wesleyac.com notebook.wesleyac.com
-
I recently started building a website that lives at wesleyac.com, and one of the things that made me procrastinate for years on putting it up was not being sure if I was ready to commit to it. I solved that conundrum with a page outlining my thoughts on its stability and permanence:
It's worth introspecting on why any given person might hesitate to feel that they can commit. This is almost always comes down to "maintainability"—websites are, like many computer-based endeavors, thought of as projects that have to be maintained. This is a failure of the native Web formats to appreciably make inroads as a viable alternative to traditional document formats like PDF and Word's .doc/.docx (or even the ODF black sheep). Many people involved with Web tech have difficulty themselves conceptualizing Web documents in these terms, which is unfortunate.
If you can be confident that you can, today, bang out something in LibreOffice, optionally export to PDF, and then dump the result at a stable URL, then you should feel similarly confident about HTML. Too many people have mental guardrails preventing them from grappling with the relevant tech in this way.
-
-
en.itpedia.nl en.itpedia.nl
-
Debugging is the process of finding and removing errors (bugs) from a software program. Bugs occur in programs when a line of code or a statement conflicts with other elements of the code. We also call errors or defects in hardware bugs.
Debugging and debugging software
Debugging is the process of finding and removing errors (bugs) from a software program. Bugs occur in programs when a line of code or a statement conflicts with other elements of the code. We also call errors or defects in hardware bugs.

-
- Jun 2022
-
en.itpedia.nl en.itpedia.nl
-
Black Box testing: Software on the rack
Black Box testing: Software on the rack
Black Box testing is defined as a testing technique in which the functionality of an application is tested without looking at the internal code structure, implementation details and knowledge of internal paths of the software. This type of testing is completely based on software requirements and specifications.

-
-
www.macstories.net www.macstories.net
-
The absence of Quick Note on the iPhone is a strange, glaring omission that’s baffling to me. I do research on every device, including the iPhone. In fact, I’d argue that the iPhone is the most important place to include Quick Note. That’s because, despite the ample screen of my iPhone 12 Pro Max, it’s still not the best place to read, making saving items for later with Quick Note more valuable there. However, my iPhone is still where I run across links and other material I want to save daily. I’d love to be able to drop links and blockquotes into Quick Note from my iPhone, so I could revisit the material later from the more comfortable reading environment of my iPad or Mac. Not having Quick Note on the iPhone is a significant blow to the feature’s utility.
Considering how I've been publicly speaking and behaving (melodramatically, that is) - as someone who has returned to using my iPhone as my primary working device - this sort of oversight is precisely what I expected, actually, What I did not expect of Apple was to respond as early as the next numeric release to this omission.
Running this very first build of iOS 16, I can indeed that Apple has thought of at least one original context for Quick Note creation, but obviously, it's quite hard to say at this point.
Anywho/how, here's what it looks like at the moment.

-
-
www.ibiblio.org www.ibiblio.org
-
This page is excellent for an example of HTML being an adequate substitute for traditional office formats.
-
-
-
The intent of this specification and related tools is to expand the reach of development containers, allow the usage of containers by themselves or different orchestration technologies, and allow any tool to manage and create them.
-
and they've been focused on using Docker or Docker Compose
-
-
anchor.digitalocean.com anchor.digitalocean.com
-
Many believe that companies should give more time to employees to contribute to open source, with 79% agreeing or strongly agreeing that companies should give time during work hours to contribute.
-
while just 20% have been paid for their contributions to open source, 53% agree or strongly agree that individuals should be paid for open source contributions
-
-
-
Emacs has aspects of the right thing
See also: The Pinocchio Problem
-
-
en.itpedia.nl en.itpedia.nl
-
It is important that you achieve optimal test results with software testing without deviating from the test goal. But how do you determine whether you are following the right test strategy? For this you have to follow a number of basic principles.

-
-
rd.digital rd.digital
Tags
Annotators
URL
-
- May 2022
-
en.itpedia.nl en.itpedia.nl
-
Any software developer will recognize it, The Eureka Moment. This is when you suddenly see how to solve a particular problem. We have them in all shapes and sizes and at the strangest moments. How does that work in SCRUM and DevOps teams?
The Eureka Moment in Agile Teams
Any software developer will recognize it, The Eureka Moment. This is when you suddenly see how to solve a particular problem. We have them in all shapes and sizes and at the strangest moments. How does that work in SCRUM and DevOps teams?

-
-
3s-cms.enstb.org 3s-cms.enstb.org
-
xml <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:doap="http://usefulinc.com/ns/doap#"> <doap:Project> <doap:name>Example project</doap:name> <doap:homepage rdf:resource="http://example.com" /> <doap:programming-language>javascript</doap:programming-language> <doap:license rdf:resource="http://example.com/doap/licenses/gpl"/> </doap:Project> </rdf:RDF>
-
-
xmpp.org xmpp.org
-
```xml
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns='http://usefulinc.com/ns/doap#' xmlns:xmpp='https://linkmauve.fr/ns/xmpp-doap#' xmlns:schema='https://schema.org'> <Project> <name>poezio</name>
<created>2010-01-10</created> <shortdesc xml:lang='en'>Free console XMPP client</shortdesc> <shortdesc xml:lang='fr'>Client XMPP libre en console</shortdesc> <description xml:lang='en'>Free and modern console XMPP client written in Python with the ncurses library</description> <description xml:lang='fr'>Client console XMPP libre et moderne, écrit en Python avec la bibliothèque ncurses</description> <homepage rdf:resource='https://poez.io/'/> <schema:documentation rdf:resource='https://doc.poez.io/'/> <download-page rdf:resource='https://poez.io/#download'/> <bug-database rdf:resource='https://lab.louiz.org/poezio/poezio/-/issues'/> <developer-forum rdf:resource='xmpp:poezio@muc.poez.io?join'/> <support-forum rdf:resource='xmpp:poezio@muc.poez.io?join'/> <license rdf:resource='https://git.poez.io/poezio/plain/COPYING'/> <language>en</language> <schema:logo rdf:resource='https://poez.io/img/logo.svg'/> <schema:screenshot rdf:resource='https://poez.io/img/screenshot.png'/> <programming-language>Python</programming-language> <os>Linux</os> <category rdf:resource='https://linkmauve.fr/ns/xmpp-doap#category-client'/> <repository> <GitRepository> <browse rdf:resource='https://lab.louiz.org/poezio/poezio'/> <location rdf:resource='https://lab.louiz.org/poezio/poezio.git'/> </GitRepository> </repository> <implements rdf:resource='https://xmpp.org/rfcs/rfc6120.html'/> <implements rdf:resource='https://xmpp.org/rfcs/rfc6121.html'/> <implements rdf:resource='https://xmpp.org/rfcs/rfc6122.html'/> <implements rdf:resource='https://xmpp.org/rfcs/rfc7590.html'/> <implements> <xmpp:SupportedXep> <xmpp:xep rdf:resource='https://xmpp.org/extensions/xep-0030.html'/> <xmpp:status>complete</xmpp:status> <xmpp:version>2.5rc3</xmpp:version> <xmpp:since>0.5</xmpp:since> <xmpp:note xml:lang='en'>The 'disco' plugin can be loaded to make manual queries.</xmpp:note> <xmpp:note xml:lang='fr'>Le plugin 'disco' peut être chargé pour faire des requêtes manuellement.</xmpp:note> </xmpp:SupportedXep> </implements> <!-- And a lot more! --> <release> <Version> <revision>0.13.1</revision> <created>2020-05-31</created> <file-release rdf:resource='https://lab.louiz.org/poezio/poezio/-/archive/v0.13.1/poezio-v0.13.1.tar.gz'/> </Version> </release></Project> </rdf:RDF> ```
Tags
Annotators
URL
-
-
www.theverge.com www.theverge.com
-
github.com github.com
-
https://github.com/fossmo/awesome-zettelkasten
A curated list of zettelkasten resources
-
-
www.linkedin.com www.linkedin.com
-
Building and sharing an app should be as easy as creating and sharing a video.
This is where I think Glitch goes wrong. Why such a focus on apps (and esp. pushing the same practices and overcomplicated architecture as people on GitHub trying to emulate the trendiest devops shovelware)?
"Web" is a red herring here. Make the Web more accessible for app creation, sure, but what about making it more accessible (and therefore simpler) for sharing simple stuff (like documents comprising the written word), too? Glitch doesn't do well at this at all. It feels less like a place for the uninitiated and more like a place for the cool kids who are already slinging/pushing Modern Best Practices hang out—not unlike societal elites who feign to tether themself to the mast of helping the downtrodden but really use the whole charade as machine for converting attention into prestige and personal wealth. Their prices, for example, reflect that. Where's the "give us, like 20 bucks a year and we'll give you better alternative to emailing Microsoft Office documents around (that isn't Google Sheets)" plan?
-
as if the only option we had to eat was factory-farmed fast food, and we didn’t have any way to make home-cooked meals
See also An app can be a home-cooked meal along with this comment containing RMS's remarks with his code-as-recipe metaphor in the HN thread about Sloan's post:
some of you may not ever write computer programs, but perhaps you cook. And if you cook, unless you're really great, you probably use recipes. And, if you use recipes, you've probably had the experience of getting a copy of a recipe from a friend who's sharing it. And you've probably also had the experience — unless you're a total neophyte — of changing a recipe. You know, it says certain things, but you don't have to do exactly that. You can leave out some ingredients. Add some mushrooms, 'cause you like mushrooms. Put in less salt because your doctor said you should cut down on salt — whatever. You can even make bigger changes according to your skill. And if you've made changes in a recipe, and you cook it for your friends, and they like it, one of your friends might say, “Hey, could I have the recipe?” And then, what do you do? You could write down your modified version of the recipe and make a copy for your friend. These are the natural things to do with functionally useful recipes of any kind.
Now a recipe is a lot like a computer program. A computer program's a lot like a recipe: a series of steps to be carried out to get some result that you want. So it's just as natural to do those same things with computer programs — hand a copy to your friend. Make changes in it because the job it was written to do isn't exactly what you want. It did a great job for somebody else, but your job is a different job. And after you've changed it, that's likely to be useful for other people. Maybe they have a job to do that's like the job you do. So they ask, “Hey, can I have a copy?” Of course, if you're a nice person, you're going to give a copy. That's the way to be a decent person.
-
-
flak.tedunangst.com flak.tedunangst.com
-
Interesting that this is written by a BSD guy.
-
-
thedailywtf.com thedailywtf.com
-
we couldn't actually replace the built-in table designer (that not being part of the add-in model)
-
-
news.ycombinator.com news.ycombinator.com
-
I'd have to set up the WP instance and maintain it.
(NB: this is in response to the question Why not just use wordpress + wysiwyg editor similar to *docs, and you're done?.)
This is a good of an explanation as any for local-first software.
A natural response (to potatolicious's comment) is, "Well, somebody has to maintain these no-code Web apps, too, right? If there's someone in the loop maintaining something, the question still stands; wouldn't it make more sense for that something to be e.g. a WordPress instance?"
Answer: yeah, the no-code Web app model isn't so great, either. If service maintenance is a problem, it should be identified as such and work done to eliminate it. What that would look like is that the sort of useful work that those Web apps are capable of doing should be captured in a document that you can copy to your local machine and make full use of the processes and procedures that it describes in perpetuity, regardless of whether someone is able to continue propping up a third-party service.
Tags
Annotators
URL
-
-
www.digitalocean.com www.digitalocean.com
-
docs.gitlab.com docs.gitlab.com
-
If you paste a message from somewhere else that spans multiple lines, you can quote that without having to manually prepend > to every line!
-
-
github.com github.com
-
Easy fix, but your argument cuts both ways: Many people update Vim regularly alongside their distro, but never bother to manually update their plugins.
-
-
Local file Local file
-
I learned the techniques programmers use to tame complexity: things like factoring, levels of abstraction, and separation of concerns.
with one foot in the design world and one foot in the programming world, I wondered if we could apply these software development principles to the way we designed and managed the product.
-
-
news.ycombinator.com news.ycombinator.com
-
However when you look UNDERNEATH these cloud services, you get a KERNEL and a SHELL. That is the "timeless API" I'm writing to.
It's not nearly as timeless as a person might have themselves believe, though. (That's the "predilection" for certain technologies and doing things in a certain way creeping in and exerting its influence over what should otherwise be clear and sober unbiased thought.)
There's basically one timeless API, and that means written procedures capable of being carried out by a human if/when everything else inevitably fails. The best format that we have for conveying the content comprising those procedures are the formats native to the Web browser—esp. HTML. Really. Nothing else even comes close. (NB: pixel-perfect reproduction à la PDF is out of scope, and PDF makes a bunch of tradeoffs to try to achieve that kind of fidelity which turns out to make it unsuitable/unacceptable in a way that HTML is not, if you're being honest with your criteria, which is something that most people who advocate for PDF's benefits are not—usually having deceived even themselves.)
Given that Web browsers also expose a programming environment, the next logical step involves making sure these procedures are written to exploit that environment as a means of automation—for doing the drudge work in the here and now (i.e., in the meantime, when things haven't yet fallen apart).
-
-
news.ycombinator.com news.ycombinator.com
-
The events list is created with JS, yes. But that's the only thing on the whole site (~25 pages) that works that way.Here's another site I maintain this way where the events list is plain HTML: https://www.kingfisherband.com
There's an unnecessary dichotomy here between uses JS and page is served as HTML. There's a middle ground, where the JS can do the same thing that it does now, but it only does so at edit time—in the post author's own browser, but not in others'. Once the post author is ready to publish an update, the client-side generated content is captured as plain HTML, and then they upload that. It still "uses JS", but crucially it doesn't require the visitor to have their browser do it (and for it to be repeated N times, once per page visit)...
-
-
utcc.utoronto.ca utcc.utoronto.ca
-
At one level this is true, but at another level how long is the life of the information that you're putting into your wiki now, and how sure are you that something this could never happen to your wiki software over that lifetime?
I dunno. Was the wiki software in question MediaWiki?
I always thought it was weird when people would set up a wiki and'd go for something that wasn't MediaWiki (even though I have my own quibbles with it). MediaWiki was always the clear winner to me, even in 2012 without the benefit of another 10 years of hindsight.
-
- Apr 2022
-
github.com github.com
-
There is something nice about aligning with the platform. But it risks being a straitjacket, and I think we can provide better ergonomics when it comes to streaming.
-
-
github.com github.com
-
Instead read this gems brief source code completely before use OR copy the code straight into your codebase.
Tags
- read the source code
- having a deep understanding of something
- learning by reading the source
- software development: use of libraries vs. copying code into app project
- software development: use of libraries: only use if you've read the source and understand how it works
- copy and paste programming
Annotators
URL
-
-
en.itpedia.nl en.itpedia.nl
-
There are different types of requirements. In this article we divide the requirements into a number of categories that help us with the software selection.
Types of requirements in a SaaS selection
There are different types of requirements. In this article we divide the requirements into a number of categories that help us with the software selection.

-
-
-
There are project layouts that put implementation files and test files together.
-
-
noeldemartin.com noeldemartin.com
-
I was already aware that images cannot be inserted in the DOM like you would any normal image. If you write <img src="https://my-pod.com/recipes/ramen.jpg">, this will probably fail to render the image. That happens because the image will be private, and the POD can't return its contents without proper authentication.
-
-
jahed.dev jahed.dev
-
hopefully feed readers can treat permanent redirects as a sign to permanently update their feed URLs, then I can remove it. They probably don't, much like bookmarks don't
-
-
buttondown.email buttondown.email
-
To some extent this is understandable. We don’t know how to design things in such a way that they are easily customizable by everyone.
-
-
www.colbyrussell.com www.colbyrussell.com
-
except its codebase is completely incomprehensible to anyone except the original maintainer. Or maybe no one can seem to get it to build, not for lack of trying but just due to sheer esotericism. It meets the definition of free software, but how useful is it to the user if it doesn't already do what they want it to, and they have no way to make it do so?
Kartik made a similar remark in an older version of his mission page:
Open source would more fully deliver on its promise; are the sources truly open if they take too long to grok, so nobody makes the effort?
https://web.archive.org/web/20140903010656/http://akkartik.name/about
-
-
akkartik.name akkartik.name
-
A big cause of complex software is compatibility and the requirement to support old features forever.
I don't think so. I think it's rather the opposite. Churn is one of the biggest causes for what makes modifying software difficult. I agree, however, with the later remarks about making it easy to delete code where it's no longer useful.
Tags
Annotators
URL
-
-
dl.acm.org dl.acm.org
-
a complex problem should not ~be regarded immediately in terms of computer instruc- tions, bits, and "logical words," but rather in terms and entities natural to the problem itself, abstracted in some suitable sense
Likewise, a program being written (especially one being written anew instead of by adapting an existing one) should be written in terms of capabilities from the underlying system that make sense for the needs of the greater program, and not by programming directly against the platform APIs. In the former case, you end up with a readable program (that is also often portable), whereas in the latter case, what you end up writing amounts to a bunch of glue between existing system component that may not work together in any comprehensible way to half the audience who is not already intimately familiar with the platform in question, but no less capable of making meaningful contributions.
-
The law of the "Wild West of Programming" was still held in too high esteem! The same inertia that kept many assembly code programmers from ad- vancing to use FORTRAN is now the principal obstacle against moving from a "FORTRAN style" to a structured style.
-
The amount of resistance and prejudices which the farsighted originators of FORTRAN had to overcome to !gMn acceptance of their product is a memorable indication of the degree to which programmers were pre- occupied with efficiency, and to which trick- ology had already become an addiction
-
-
www.research-collection.ethz.ch www.research-collection.ethz.chuntitled1
-
Ihavelearnttoabandonsuchattemptsofadaptationfairlyquickly,andtostartthedesignofanewprogramaccordingtomyownideasandstandards
I have learnt to abandon such attempts of adaptation fairly quickly, and to start the design of a new program according to my own ideas and standards
-
-
-
Feature request (implement something that allows the following): 1. From any page containing a bookmarklet, invoke the user-stored bookmarklet בB 2. Click the bookmarklet on the page that you wish to be able to edit in the Bookmarklet Creator 3. From the window that opens up, navigate to a stored version of the Bookmarklet Creator 4. Invoke bookmarklet בB a second time from within the Bookmarklet Creator
Expected results:
The bookmarklet from step #2 is decoded and populates the Bookmarklet Creator's input.
To discriminate between invocation type II (from step #2) and invocation type IV (from step #4), the Bookmarklet Creator can use an appropriate class (e.g. https://w3id.example.org/bookmarklets/protocol/#code-input) or a
meta-based pragma or link relation.
-
-
www.donnelly-house.net www.donnelly-house.net
-
work-around
Bookmarklets and the JS console seem to be the workaround.
For very large customizations, you may run into browser limits on the effective length of the bookmarklet URI. For a subset of well-formed programs, there is a way to store program parts in multiple bookmarklets, possibly loaded with the assistance of a separate bookmarklet "bootloader", although this would be tedious. The alternative is to use the JS console.
In FIrefox, you can open a given script that you've stored on your computer by pressing Ctrl+O/Cmd+O, selecting the file as you would in any other program, and then pressing Enter. (Note that this means you might need to press Enter twice, since opening the file in question merely puts its contents into the console input and does not automatically execute it—sort of a hybrid clipboard thing.) I have not tested the limits of the console input for e.g. input size.
As far as I know, you can also use the JS console to get around the design of the dubious WebExtensions APIs—by ignoring them completely and going back to the old days and using XPCOM/Gecko "private" APIs. The way you do is is to open about:addons by pressing Ctrl+Shift+A (or whatever), opening or pasting the code you want to run, and then pressing Enter. This should I think give you access to all the old familiar Mozilla internals. Note, though, that all bookmarklet functionality is disabled on about:addons (not just affecting bookmarklets that would otherwise violate CSP by loading e.g. an external script or dumping an inline one on the page`).
-
CSP is taking away too much of the user's power and control over their browser use
-
Apparently there is a CSP ability to stop inline scripts from executing. I have not come across any sites that use that feature and/or the browser I am using does not support it.
There're lots.
-
- Mar 2022
-
alarmingdevelopment.org alarmingdevelopment.org
-
Open source is the ideology that all software should be free.
It's weird that in 2021 this canard associated with conflating libre and gratis is still showing up.
Tags
Annotators
URL
-
-
en.itpedia.nl en.itpedia.nl
-
A test case is a series of actions that are performed to determine a specific function or functionality of your application. Test scenarios are rather vague and include a wide range of variables. However, testing is all about being very specific. That is why we need elaborate test cases.
Test cases, examples and Best Practices A test case is a series of actions that are performed to determine a specific function or functionality of your application. Test scenarios are rather vague and include a wide range of variables. However, testing is all about being very specific. That is why we need elaborate test cases.

-
-
citeseerx.ist.psu.edu citeseerx.ist.psu.edudownload1
-
The complete overlapping of readers’ and authors’ roles are important evolution steps towards a fully writable web, as is the ability of deriving personal versions of other authors’ pages.
-
-
www.lemonde.fr www.lemonde.fr
-
Dans la science ouverte, une publication reste un tout que l’on ne modifie pas. Donc, les REL se rapprochent plutôt de la logique de l’Open Source.
-
-
ludocode.com ludocode.com
-
docs.gitlab.com docs.gitlab.com
-
GitLab self-monitoring gives administrators of self-hosted GitLab instances the tools to monitor the health of their instances. This feature is deprecated in GitLab 14.9, and is scheduled for removal in 15.0.
motivated by profit?
-
-
cefire.edu.gva.es cefire.edu.gva.es
-
Generalmente, no se hacen revisiones previas antes de aceptar las modificaciones, y la mayoría de los wikis están abiertos al público general o al menos a todas las personas que tienen acceso al servidor wiki.
- estas son las libertades de los wikis**
-
-
rom-rb.org rom-rb.orgROM1
-
We are looking for sustainable sponsorship. If your company is relying on rom-rb or simply want to see rom-rb evolve faster to meet your requirements, please consider backing the project
-
-
theswo.sourceforge.net theswo.sourceforge.net
-
-
maastrichtu-ids.github.io maastrichtu-ids.github.io
Tags
Annotators
URL
-
-
-
Application, System, Tool or Software, what is what? Application, System, Software and Tool, are different words that we often use to describe computerprograms that perform a task. These words have specific meanings in different contexts. IT.

-
-
news.ycombinator.com news.ycombinator.com
-
I just dislike how non-native it feels and looks.
I suspect VS Code's non-native look has actually contributed to the uptake from a subset of its users. A fullscreen terminal-based editor like Vim is also non-native as far as widget sets are concerned, but pleasantly so in at least one respect. When Chrome was released, when you asked people what they liked about it, sure they'd say it was fast and whatnot, but for a non-trivial segment of the world, they just liked how visually slim it was. They appreciated how little chrome was actually in Chrome. VS Code managed to reap dividends on its imports of the same approach to its "shell", even while not being particularly fast. (People point to VS Code as an example of a snappy Electron app, and they're not wrong insofar as the comparison goes to other typical Electron apps; on an absolute, non-weight-class-adjusted scale, though, VS Code is still pretty clunky—people just ignore it because of how slim it appears in comparison to IDEs like MonoDevelop[1].)
Tags
Annotators
URL
-
-
retina.studio retina.studio
-
I’m considering updating my Mac to Big Sur just to run this.
Meanwhile, not only does the scope of this tool not merit the Big Sur requirement, it doesn't even require a Mac. It interaction style is so free of intracies that it could be developed (and distributed) as a single HTML file with a text input and some script blocks.
-
-
www.cs.virginia.edu www.cs.virginia.edu
-
To realize this potential, we must provide a medium that can be mastered by a single individual. Any barrier that exists between the user and some part of the system will eventually be a barrier to creative expression. Any part of the system that cannot be changed or that is not sufficiently general is a likely source of impediment.
-
-
web.hypothes.is web.hypothes.is
-
go to
This tool should be a "codebook"—a downloadable document meant to be stored in an offline copy e.g. on the user's local disk, a la PDF (except still actually HTML, as here). I shouldn't need to "go to" anywhere to use it; that should only be necessary to get it the first time.
-
-
www.infoworld.com www.infoworld.com
-
Whether to inject behavior into a Web page is my choice. How I do so is nobody's business. If a need that can be met with a bookmarklet instead requires a set of browser-specific extensions, that's a tax on developers.
-
- Feb 2022
-
ruby-doc.org ruby-doc.org
-
There are two pairs of methods for sending/receiving messages: Object#send and ::receive for when the sender knows the receiver (push); Ractor.yield and Ractor#take for when the receiver knows the sender (pull);
-
-
www.colbyrussell.com www.colbyrussell.com
-
“Well, it’s Open Source, I guess I could go download the source code… but… meh, it’s so far out of my way, not worth it,” and the urge fizzles out. I think that a lot of potential human creativity is being wasted this way.
This reminds me of physical tinkering, like building or fixing your own small furniture. That's also hard with the products we often buy today -- it's difficult to fix minature electronics which are meant to be replaced.
But with software (esp. open source) it could be easier, as everyone can have the same tools. I very much resonate with the idea of tinkering more and using less standards.
-
-
-
STLC - Software Testing Life Cycle
Software Testing Life Cycle (STLC) is defined as a set of activities performed to perform software testing. The Software Testing Life Cycle refers to a testing process with specific steps that must be performed in a specific order to ensure that quality objectives are met.

-
-
underpassapp.com underpassapp.com
-
underpassapp.com underpassapp.com
-
StopTheMadness is a web browser extension that stops web sites from making your browser harder to use
-
"The good news is that you can wrest control of your browser back from these malicious, control-freak sites."
-
-
news.ycombinator.com news.ycombinator.com
-
Wordle's spread on social media was enabled in part by its low-tech approach for e.g. sharing scores.
One low-tech approach that could've been used here for data persistence would be to generate and prompt the user to save their latest scorecard in PDF or Word format—only it's not a PDF or Word format, but instead "wordlescore.html" file, albeit one that they are able to save to disk and double click to open all the same. When they need to update their scorecard with today's data, you use window.open to show a page that prompts the user to open their most recent scorecard (using either Ctrl+/Cmd+O, or by navigating to the place where they saved it on disk via bookmark). What's not apparent on sight alone is that their wordlescore.html also contains a JS payload as an inline script. When wordlescore.html is opened, it's able to communicate with the Wordle tab via postMessage to window.opener, request the newest data from the app, and then update wordlescore.html itself as appropriate.
-
-
en.itpedia.nl en.itpedia.nl
-
Gap analysis in 4 steps Instead of groping around in the dark, a gap analysis of the gap leads us through a detailed investigation of where our organization is currently and where we want to be. This allows us to act on the basis of facts, not on the basis of assumptions.

-
-
-
This is especially useful for UI library components, as it is generally unknown which events will be required from them for all desired use cases. For example, if a Button component only forwards a click event, then no use case that requires the mouseover or the keypress event can be used with it.
-
-
de.statista.com de.statista.com
-
Rund 80 Prozent der im Jahr 2021 Befragten in Deutschland gaben an, Digitalisierung als wichtiges Thema zu betrachten. Jedoch sahen nur rund ein Fünftel der Befragten in der Digitalisierung einen Investitionsschwerpunkt.
50 Prozent der Befragten gaben an, dass der Einsatz einer HR-Software im Jahr 2022 von entscheidender Bedeutung für das Personalwesen im Handel sei.
-
-
www.gnu.org www.gnu.orggnu.org1
-
La libertad de ejecutar el programa como se desee, con cualquier propósito (libertad 0). La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que se desee (libertad 1). El acceso al código fuente es una condición necesaria para ello. La libertad de redistribuir copias para ayudar a otros (libertad 2). La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3). Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.
Este software tiene cuatro libertades que nos permiten utilizarlo de manera optima y adecuada*
Tags
Annotators
URL
-
-
web2-unterricht.ch web2-unterricht.ch
-
Hypothesis wurde 2011 als non-profit Organisation in San Francisco gegründet. Die Hypothes.is-Server stehen in Kalifornien. Hypothes.is ist Open Source Software und steht unter einer BSD-Lizenz.
-2011 -San Francisco -Open Source -BSD-Lizenz
-
-
en.itpedia.nl en.itpedia.nl
-
The different types of software packages
Computer_software controls the physical parts of the machine so that these parts know how to work together. That's where it starts, and there are many types of software in circulation.

-
- Jan 2022
-
-
<script> import { fibonacci } from './math.js'; $: result = fibonacci(n, 0); </script> <input type=number bind:value={n}> <p>The {n}th Fibonacci number is {$result.data}</p> {#if $result.loading} <p>Show a spinner, add class or whatever you need.</p> <p>You are not limited to the syntax of an #await block. You are free to do whatever you want.</p> {/if}
-
-
-
Having a consistent and predictable pattern is key to the elegance.
-
-
github.com github.com
-
I value this pattern because it allows concise concurrency.
-
-
www.mobindustry.net www.mobindustry.net
-
Code Audit Services
-
-
stackoverflow.com stackoverflow.com
-
Unfortunately, the part that deals with SOAP transformations is not free.
-
-
github.com github.com
-
Oh, I just figured out a workaround for my project, in case it helps someone. If you want the source of truth on the prop to come from the child component, then leave it undefined in the parent. Then, you can make the reactive variable have a condition on the presence of that variable. eg: <script> let prop; $: prop && console.log(prop); </script> <Child bind:prop/> Might not work for every use case but maybe that helps someone.
-
-
julian.digital julian.digital
-
As John Palmer points out in his brilliant posts on Spatial Interfaces and Spatial Software, “Humans are spatial creatures [who] experience most of life in relation to space”.
This truism is certainly much older than John Palmer, but an interesting quote none-the-less.
It could be useful to meditate on the ideas of "spatial interfaces" and "spatial software" as useful affordances within the application and design spaces.
-
-
zettelstore.de zettelstore.de
-
t73f.de t73f.de
-
https://t73f.de/blog/2020/zettelkasten/
Sounds like Detlef Stern actually saw the Marbach exhibition on "Machines of the imagination".
He's also got a fairly large list of software that is commonly used to create a digital zettelkasten.
Tags
Annotators
URL
-
-
-
What does a Functional Design have to offer? https://en.itpedia.nl/2019/01/16/wat-heeft-een-functioneel-ontwerp-te-bieden/ A functional design is a specification of the functions of the software that the end_users have agreed to. Many companies have a software_developer handbook that describes what topics a functional design should cover. This article looks at the steps of functional design in the context of software development.

-
-
blog.thepete.net blog.thepete.net
-
When a product manager trusts that the engineers on the team have the interest of the product at heart, they also trust the engineer’s judgment when adding technical tasks to the backlog and prioritizing them. This enables the balanced mix of feature and technical work that we’re aiming for.
Why is it so common for engineering teams to be mistrusted by other parts of the business?
Part of that is definitely on engineers: chasing the new shiny, over-engineering, etc.
That seems unlikely to account for all of it, though.
-
- Dec 2021
-
Local file Local file
-
Desired workflow:
- I navigate to the APL login page https://austin.bibliocommons.com/user/login
- I invoke a bookmarklet on the login page that opens a new browser window/tab
- In the second tab, I navigate here—to a locally saved copy of (a facsimile of) my library card
- I invoke a bookmarklet on my library card to send the relevant details to the APL login page using
window.postMessage - The bookmarklet set up in step 2 receives the details, fills in the login form, and automatically "garbage collects" the second tab
Some other thoughts: We can maintain a personal watchlist/readlist similarly. This document (patron ID "page") itself is probably not a good place for this. It is, however, a good place to reproduce a convenient copy of the necessary bookmarklets. (With this design, only one browser-managed bookmarklet would be necessary; with both bookmarklets being part of the document contents, the second bookmarklet used for step 4 can just be invoked directly from the page itself—no need to follow through on actually bookmarking it.)
-
-
-
I’d like to remind you that the code wasn’t developed by WordPress - it was General Public License (GPL). We didn’t steal it, and we gave it back according to GPL (JavaScript is not linked).
Incomprehensible.
-
-
-
There will also be a "Fire Button," which has become popular on mobile devices as a quick (and animated) way to clear all your tabs and browsing data with a single tap or click.
What the actual fuck are y’all doing on your phones that this is such a consideration for you? Like… Is the web just for porn for you or something???
-
-
www.mobindustry.net www.mobindustry.net
-
How to Create Your Own Accounting Software: Technologies and Cost
-
-
-
Standard algorithms as a reliable engine in SaaS https://en.itpedia.nl/2021/12/06/standaard-algoritmen-als-betrouwbaar-motorblok-in-saas/ The term "Algorithm" has gotten a bad rap in recent years. This is because large tech companies such as Facebook and Google are often accused of threatening our privacy. However, algorithms are an integral part of every application. As is known, SaaS is standard software, which makes use of algorithms just like other software.
- But what are algorithms anyway?
- How can we use standard algorithms?
- How do standard algorithms end up in our software?
- When is software not an algorithm?

-
-
www.itpedia.nl www.itpedia.nl
-
What is an assembler language? https://en.itpedia.nl/2019/11/11/wat-is-een-assembler-taal/ An #assembler_language is a low-level programming_language designed for a specific processor type. We can produce Assembler by compiling #source_code from a high-level programming language (such as C / C ++). But we can also write #programs in this language ourselves. In turn, we can convert Assembler_code into machine_code using an assembler.

-
- Nov 2021
-
en.itpedia.nl en.itpedia.nl
-
Request For Information (RFI) https://en.itpedia.nl/2017/02/18/sisp-3-3-request-for-information-rfi/ Request_For_Information (RFI)" is the questionnaire with questions about all musthave criteria, general company_information about the supplier and degree of penetration of the software in the industry. SaaS.
-
-
www.mobindustry.net www.mobindustry.net
-
-
Now this is getting too complex for discussing this here and these type of architectural decisions require more in depth understanding than what I can provide here.
-
My UIs are data/store driven. The UI is just a way to visualize the data. Your data could flow through all of of the extensions and the extensions can make decisions (e.g. setting visible to false). Like middlewares in a Connect/Express/Polka app. And the UI doesn't even know about all this, it just updates with the current state and makes sure it's consistent.
-
-
bilge.world bilge.world
-
The only complaint about Twitter I remember that hasn't already been addressed here is the capability of editable 'toots.' Is that a possibility? That won't happen. There's actually a good reason why they don't do that. It's simply because you could make a toot about one thing, have people favorite it and share it, link it from other places, and then suddenly, it says 'Heil Hitler,' or something.
Addressing this issue in my upcoming review of Twitter Blue.
Tags
Annotators
URL
-
-
www.varvet.com www.varvet.com
-
I am firmly convinced that asserting on the state of the interface is in every way superior to asserting on the state of your model objects in a full-stack test.
-
-
wiki.debian.org wiki.debian.org
-
take advantage of LVM snapshots. Take snapshots before and after an upgrade. In case, if the system is in unrecoverable position, rollback to the last snapshot from a system rescue LiveCD. A useful program for this, as well as regular system backups is timeshift
-
-
askubuntu.com askubuntu.com
-
Perhaps not a good idea, in general, to use a random PPA for such sprawling software as a browser. Auditability near zero even if it is open source.
-
-
www.linuxuprising.com www.linuxuprising.com
-
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepoflatpak install flathub org.chromium.Chromium
-
-
www.reddit.com www.reddit.com
-
I'll use any of them, so long as it's not somebody's proprietary BS.But even if Canonical gave up on keeping all of Snap distribution private in-house, it would still be my last choice because of all the issues Snaps have (and other options don't).
-
Because flatpaks are distro agnostic, while you may prefer to have the distro's native package format you have to understand maintaining a a deb, rpm, etc simultaneously can be a real pain in the ass that you either deal with or you simply choose not to support certain formats and thus certain distros. With Flatpak is one package for all distros, or at least that's the idea.
-
This doesn't solve the problem of supporting where the users are; not everyone wants to use a rolling release, not everyone has the same kernel version, and so on. Not all distros support deb packages.If everyone was on Arch, then AUR would solve everyone's problem. If everyone was on Fedora, then RPM would solve everyone's problem but we don't have that universal packaging system.Freedom to pick and choose what you want to use on Linux is what makes it fun but for people that are trying to develop software and share it with their customers on linux, it's super complicated; they don't have a way to ship software to everyone in one simple package.Software devs can't just ship a deb package. That eliminates the large number of RPM based users such as Fedora, RedHat Fedora Enterprise, CentOS Stream or other distros. Then you have the Arch users, etc.That's what Flatpack/snap/appimage can help with.
-
packaging is difficult to maintain on linux with so many different distros that software companies to support.Flatpak, snap, and appimage makes it easier to ship once for a lot of distros that support them.
-
- Oct 2021
-
-
Else, H. (2021). Giant, free index to world’s research papers released online. Nature. https://doi.org/10.1038/d41586-021-02895-8
-
-
www.kylehq.com www.kylehq.comKyleHQ1
Tags
Annotators
URL
-
-
goran.krampe.se goran.krampe.se
-
Just like LuaJIT2 has been a “Tour de Force” of a single author, so has Nim - and that is interesting in itself. I would say it has been a pattern over the years with most successful open source languages.
Interesante la idea de visiones individuales que guían proyectos libres y de código abierto y los orientan. La conformación de la comunidad es necesaria y clave, pero también la fuerza personal que lleva proyectos adelante.
-
-
-
Here's a framing I like from Gary Bernhardt (not set off in a quote block since this entire section, another than this sentence, is his). People tend to fixate on a single granularity of analysis when talking about efficiency. E.g., "thinking is the most important part so don't worry about typing speed". If we step back, the response to that is "efficiency exists at every point on the continuum from year-by-year strategy all the way down to millisecond-by-millisecond keystrokes". I think it's safe to assume that gains at the larger scale will have the biggest impact. But as we go to finer granularity, it's not obvious where the ROI drops off. Some examples, moving from coarse to fine: The macro point that you started with is: programming isn't just thinking; it's thinking plus tactical activities like editing code. Editing faster means more time for thinking. But editing code costs more than just the time spent typing! Programming is highly dependent on short-term memory. Every pause to edit is a distraction where you can forget the details that you're juggling. Slower editing effectively weakens your short-term memory, which reduces effectiveness. But editing code isn't just hitting keys! It's hitting keys plus the editor commands that those keys invoke. A more efficient editor can dramatically increase effective code editing speed, even if you type at the same WPM as before. But each editor command doesn't exist in a vacuum! There are often many ways to make the same edit. A Vim beginner might type "hhhhxxxxxxxx" when "bdw" is more efficient. An advanced Vim user might use "bdw", not realizing that it's slower than "diw" despite having the same number of keystrokes. (In QWERTY keyboard layout, the former is all on the left hand, whereas the latter alternates left-right-left hands. At 140 WPM, you're typing around 14 keystrokes per second, so each finger only has 70 ms to get into position and press the key. Alternating hands leaves more time for the next finger to get into position while the previous finger is mid-keypress.) We have to choose how deep to go when thinking about this. I think that there's clear ROI in thinking about 1-3, and in letting those inform both tool choice and practice. I don't think that (4) is worth a lot of thought. It seems like we naturally find "good enough" points there. But that also makes it a nice fence post to frame the others.
-
As with this post on reasons to measure, while this post is about practical reasons to improve productivity, the main reason I'm personally motivated to work on my own productivity isn't practical. The main reason is that I enjoy the process of getting better at things, whether that's some nerdy board game, a sport I have zero talent at that will never have any practical value to me, or work. For me, a secondary reason is that, given that my lifespan is finite, I want to allocate my time to things that I value, and increasing productivity allows me to do more of that, but that's not a thought i had until I was about 20, at which point I'd already been trying to improve at most things I spent significant time on for many years.
-
A specific example of something moving from one class of item to another in my work was this project on metrics analytics. There were a number of proposals on how to solve this problem. There was broad agreement that the problem was important with no dissenters, but the proposals were all the kinds of things you'd allocate a team to work on through multiple roadmap cycles. Getting a project that expensive off the ground requires a large amount of organizational buy-in, enough that many important problems don't get solved, including this one. But it turned out, if scoped properly and executed reasonably, the project was actually something a programmer could create an MVP of in a day, which takes no organizational buy-in to get off the ground. Instead of needing to get multiple directors and a VP to agree that the problem is among the org's most important problems, you just need a person who thinks the problem is worth solving.
-
Unlike most people who discuss this topic online, I've actually looked at where my time goes and a lot of it goes to things that are canonical examples of things that you shouldn't waste time improving because people don't spend much time doing them. An example of one of these, the most commonly cited bad-thing-to-optmize example that I've seen, is typing speed (when discussing this, people usually say that typing speed doesn't matter because more time is spent thinking than typing). But, when I look at where my time goes, a lot of it is spent typing.
-
It is commonly accepted, verging on a cliche, that you have no idea where your program spends time until you actually profile it, but the corollary that you also don't know where you spend your time until you've measured it is not nearly as accepted.
-
I'm not a naturally quick programmer. Learning to program was a real struggle for me and I was pretty slow at it for a long time (and I still am in aspects that I haven't practiced). My "one weird trick" is that I've explicitly worked on speeding up things that I do frequently and most people have not.
-
-
news.ycombinator.com news.ycombinator.com
-
I no longer know how it works. I don't care to maintain it. It needs big changes to handle something like embedding a Jupyter notebook. And it depends on Python 2.6(!).With hundreds of pages, and its own custom URL layout that I don't want to break, I dread migrating
-
-
www.ableton.com www.ableton.com
-
For a demonstration of Anna's skills, we can look back to the live challenge she took part in at Loop Create.
Learning Ableton Live 11
I downloaded and installed Ableton Live 11. The 90-day free trial has expired. The install recognized that I had already tried out version 10.
-
-
www.blackmagicdesign.com www.blackmagicdesign.com
-
It looks like they make their business model is based predominantly on hardware over software.
-
-
www.mobindustry.net www.mobindustry.net
-
Everything a Product Owner Needs to Know Before Starting a Software Development Project
-
-
certificates.creativecommons.org certificates.creativecommons.org
-
Open source software is cited as the first domain where networked open sharing produced a tangible benefit
The phrase should be:
The Free Software and Open-source movements were the first domains where networked open sharing produced a tangible benefit.
Why?
Free Software movement started in 1983.
Open-source movement started in 1998.
-
-
discuss.write.as discuss.write.as
-
Good user support case study.
Topics:
- premium versus gratis support
- rude, abusive, or demanding users
- Discourse as a medium for handling support requests
- asking bad questions versus how to ask good questions
-
- Sep 2021
-
-
A potentially interesting task management plugin for obsidian. I'm a little worried about long-term support. I'm going to wait and see what happens.
-
-
github.com github.com
-
This is not a published Chrome extension and it uses an odd workaround to circumvent Chrome security. So I'm not sure how safe it is. Keep an eye on it; if it develops enough, it could be quite useful.
-
-
forum.obsidian.md forum.obsidian.md
-
I use https://hypothes.is/ 55 to annotate web sites and web based pdf’s. I want to easily import them into Obsidian. This script uses the Templater template.
This is another good possibility to hide most of the machinery of connecting hypothesis to obsidian. I like that it takes advantage of relatively robust existing bits of obsidian.
-
-
github.com github.com
-
Export/takeout for your personal Hypothes.is data: annotations and profile information.
Python batch-file approach for exporting from hypothesis.
Tags
Annotators
URL
-
-
github.com github.com
-
exporting hypothesis annotations to obsidian (markdown files)
CLI-based method for batch exporting hypothesis annotations in markdown suitable for adding to Obsidian. I'm not sure I like it; the idea of batch-filing the process irks me. I would prefer for it to all happen in the background.
-
-
github.com github.com
-
This is a plugin for Obsidian (https://obsidian.md). It allows you to open and annotate PDF and EPUB files. The plugin is based on https://web.hypothes.is/, but modified to store the annotations in a local markdown file instead of on the internet.
This has possibilities because it backgrounds a lot of the heavy lifting by saving the annotation to a local markdown file.
-
-
news.slashdot.org news.slashdot.org
-
(They blame Chrome's "feature" addition treadmill, where "they keep adding stupid kitchen sinks for the sole and only purpose to make others unable to keep up.")
-
-
-
Update API usage of the view helpers by changing javascript_packs_with_chunks_tag and stylesheet_packs_with_chunks_tag to javascript_pack_tag and stylesheet_pack_tag. Ensure that your layouts and views will only have at most one call to javascript_pack_tag or stylesheet_pack_tag. You can now pass multiple bundles to these view helper methods.
Good move. Rather than having 2 different methods, and requiring people to "go out of their way" to "opt in" to using chunks by using the longer-named
javascript_packs_with_chunks_tag, they changed it to just use chunks by default, out of the box.Now they don't need 2 similar but separate methods that do nearly the same, which makes things simpler and easier to understand (no longer have to stop and ask oneself, which one should I use? what's the difference?).
You can't get it "wrong" now because there's only one option.
And by switching that method to use the shorter name, it makes it clearer that that is the usual/common/recommended way to go.
-
-
www.npmjs.com www.npmjs.com
-
The more your tests resemble the way your software is used, the more confidence they can give you.
-
-
thoughtbot.com thoughtbot.com
-
most recently the release of ActiveStorage in Rails 5.2
-
-
web.eecs.utk.edu web.eecs.utk.edu
-
My research internships shocked me because they expected me to tell them what I was going to work on. They gave me a crazy amount of freedom in order to do this. I got shockingly comfortable with wandering the office buildings and asking senior employees in other divisions for their time. As long as I could periodically show value, my mentors gave me free reign.
I wonder how useful this can be in my environment
-
-
-
Matthews, D. (2021). Drowning in the literature? These smart software tools can help. Nature, 597(7874), 141–142. https://doi.org/10.1038/d41586-021-02346-4
-
- Aug 2021
-
stackoverflow.com stackoverflow.com
-
This still would not eliminate all delay, but I think this could be faster (no render blocking), and cleaner than having inline scripts scattered all over the parent document.
-
-
css-tricks.com css-tricks.com
-
I always had to set the height of them literally almost 50% taller than the content itself to accommodate for the innards growing when the form was submitted with errors (the error messaging expanded the height). If I didn’t, the submit button would get cut off making the form un-submittable.
-
-
-
I really hope they keep breaking it. Being the lead on a library for several years, most of the forced refactors were pretty straight forward and in almost every case made our code either more sound or easier to be consumed. Now I work on a runtime that embeds TypeScript and 3.5.1 has broken some code, thought it took me all of about 15 minutes to make the changes to adopt it, and in every case, it broke because we were being a bit loose with the types. While it didn't find any bugs, it made the code more "safe".
I really hope they keep breaking it.
-
-
stackoverflow.com stackoverflow.com
-
You can force the type system to remember each value as a literal string: const list = ['a' as 'a','b' as 'b','c' as 'c']; // infers as ('a'|'b'|'c')[]
-
-
stackoverflow.com stackoverflow.com
-
softwarequotes.com softwarequotes.com
-
At some point software design becomes less about what and more about when.
Tags
Annotators
URL
-
-
academic.oup.com academic.oup.com
-
O’Toole, Á., Scher, E., Underwood, A., Jackson, B., Hill, V., McCrone, J. T., Colquhoun, R., Ruis, C., Abu-Dahab, K., Taylor, B., Yeats, C., du Plessis, L., Maloney, D., Medd, N., Attwood, S. W., Aanensen, D. M., Holmes, E. C., Pybus, O. G., & Rambaut, A. (2021). Assignment of epidemiological lineages in an emerging pandemic using the pangolin tool. Virus Evolution, veab064. https://doi.org/10.1093/ve/veab064
-
-
journal.dampress.org journal.dampress.org
-
il faut envisager ici l’échelle de la machine en adéquation avec celles des énergies terrestres et concevoir des structures qui, dans le temps, épouseront les cycles de l’ère géologique que nous habitons
Ce type de problème de conception est inhérent a la propre finitude de l’être humain : on ne peut pas penser a tout. Cependant, si un système est bien conçu, ce type d’erreur peut souvent être résolu par une mise a jour logicielle (plus ou moins bas niveau). Il est donc possible que la correction de ce bug ne coûte aucune matière additionnelle : pas besoin de remplacer le matériel, mais besoin de beaucoup se creuser le cerveau pour mettre a jour le logiciel.
-
-
www.ruby-lang.org www.ruby-lang.org
-
There are three minor changes about keyword arguments in Ruby 2.7.
-
-
matt-rickard.com matt-rickard.com
-
If it looks ugly, it is most likely a terrible mistake.
I have a rule similar for this myself: If it looks wrong or ingenuous, it is wrong
-
Only learn from the best. So when I was learning Go, I read the standard library.
-
-
chriskiehl.com chriskiehl.com
-
Write your code so that you can add new ways of interacting with the world later without having to modify anything you've already written.
-
-
www.mattlayman.com www.mattlayman.com
-
The authors of Team Topologies suggest that we flip this law on its head. If we can make teams that map to the structure that we want our software system to be like, then we’ll succeed when Conway’s Law kicks in.
Tags
Annotators
URL
-
-
refined.blog refined.blog
-
An interesting directory of personal blogs on software and security.
While it aggregates from various sources and allows people to submit directly to it, it also calculates a quality score/metric by using a total number of Hacker News points earned by the raw URL
Apparently uses a query like: https://news.ycombinator.com/from?site=example.com to view all posts from HN.
-
- Jul 2021
-
datatracker.ietf.org datatracker.ietf.orgrfc64551
-
The WebSocket Protocol is designed on the principle that there should be minimal framing (the only framing that exists is to make the protocol frame-based instead of stream-based and to support a distinction between Unicode text and binary frames). It is expected that metadata would be layered on top of WebSocket by the application Fette & Melnikov Standards Track [Page 9] RFC 6455 The WebSocket Protocol December 2011 layer, in the same way that metadata is layered on top of TCP by the application layer (e.g., HTTP). Conceptually, WebSocket is really just a layer on top of TCP that does the following: o adds a web origin-based security model for browsers o adds an addressing and protocol naming mechanism to support multiple services on one port and multiple host names on one IP address o layers a framing mechanism on top of TCP to get back to the IP packet mechanism that TCP is built on, but without length limits o includes an additional closing handshake in-band that is designed to work in the presence of proxies and other intermediaries Other than that, WebSocket adds nothing. Basically it is intended to be as close to just exposing raw TCP to script as possible given the constraints of the Web. It's also designed in such a way that its servers can share a port with HTTP servers, by having its handshake be a valid HTTP Upgrade request. One could conceptually use other protocols to establish client-server messaging, but the intent of WebSockets is to provide a relatively simple protocol that can coexist with HTTP and deployed HTTP infrastructure (such as proxies) and that is as close to TCP as is safe for use with such infrastructure given security considerations, with targeted additions to simplify usage and keep simple things simple (such as the addition of message semantics).
-
-
github.com github.com
Tags
Annotators
URL
-
-
blog.appsignal.com blog.appsignal.com
-
This works nicely wherever we show authors, but after we deploy to production, the folks from other parts of the world won’t get notified anymore about their songs. Mistakes like these are easy to make when using concerns.
-
-
unhosted.org unhosted.org
-
The world could benefit from a curated set of bookmarklets in the style of Smalltalk ("doIt", "printIt", etc buttons) that you can place in your bookmarks bar (or copy into a bookmarks document and open in it in your browser), where the purpose would be to allow you to:
- access a new scratch area (about:blank) for experimentation
- make it editable, or make any given element on a page editable
- let you evaluate any code written into the scratch space
scratch.js aims for something something similar, and though laudable it falls short of what I actually crave (and what I imagine would be be most beneficial/appreciated by the public).
-
-
stackoverflow.com stackoverflow.com
-
it's much faster—the stack frame does not have to be carried along the "thrown symbol", and no object is created. Lightweight nonlinear flow control.
-
-
docdrop.org docdrop.org
-
something called federated wiki which was by ward cunningham if anyone knows the details behind that or how we got these sliding panes in the first place i'm always interested
it looks like my comment got moderated out, and I didn't save a copy. Not going to retype it here, but the gist is that:
- Ward invented the wiki, not just the sliding panes concept.
- Sliding panes are a riff on Miller columns, invented by Mark S. Miller
- Miller columns are like a visual analog of UNIX pipes
- One obvious use case for Miller columns is in web development tools, but (surprisingly) none of the teams working on browsers' built-in devtools at this point have have managed to get this right!
Some screenshots of a prototype inspector that I was working on once upon a time which allowed you to infinitely drill down on any arbitrary data structures:
Addendum (not mentioned my original comment): the closest "production-quality" system we have that does permit this sort of thing is Glamorous Toolkit https://gtoolkit.com/.
-
-
lyz-code.github.io lyz-code.github.io
-
behaviour should come first and drive our storage requirements.
-
-
www.timsommer.be www.timsommer.be
-
-
The inhabitants are able to modify their environment
See also: woodworkers
-
-
stackoverflow.com stackoverflow.com
-
Wow, Aaron himself just answered it!
-
answered Oct 12 '09 at 18:28
-
-
ayjay.org ayjay.org
-
Why isn’t there anything on our class’s Canvas page? Because Canvas and Blackboard are evil and must be destroyed. So-called “learning management software” is very possibly the worst software ever created by anyone for any purpose, and I will not add to the store of suffering in the world by making use of it. I explain in more detail my objections to Canvas here.
Awesome AND true.
Tags
Annotators
URL
-
-
www.snowsoftware.com www.snowsoftware.com
-
SAM on Snow Atlas
-
-
-
www.snowsoftware.com www.snowsoftware.com
- Jun 2021
-
www.b-list.org www.b-list.org
-
Worse still is the issue of “service” layers requiring you to basically build your own ORM. To really do a backend-agnostic service layer on top of the Django ORM, you need to replace or abstract away some of its most fundamental and convenient abstractions. For example, most of the commonly-used ORM query methods return either instances of your model classes, or instances of Django’s QuerySet class (which is a kind of chained-API results wrapper around a query). In order to avoid tightly coupling to the structure and API of those Django-specific objects, your service layer needs to translate them into something else — likely generic iterables to replace QuerySet, and some type of “business object” instance to replace model-class instances. Which is a non-trivial amount of work even in patterns like Data Mapper that are designed for this, and even more difficult to do in an Active Record ORM that isn’t.
I see what this guy means and he has a point. However, I don't think about reimplementing these things when talking about services on Django. I want a centralized place to store business logic (not glue queries) and avoid multiple developers writing the same query multiple times in multiple places. The name "service" here sucks.
-
A second problem is that when you decide to go the “service” route, you are changing the nature of your business. This is related to an argument I bring up occasionally when people tell me they don’t use “frameworks” and never will: what they actually mean, whether they realize it or not, is “we built and now have to maintain and train our developers on our own ad-hoc private framework, on top of whatever our normal business is”. And adopting the service approach essentially means that, whatever your business was previously, now your business is that plus developing and maintaining something close to your own private ORM.
I don't think these two things are even close to be the same thing. Django's ORM is not replaced by services, from what I know services are the ORM with the difference that they are concentrated in a module.
-
-
blog.viktoradam.net blog.viktoradam.net
-
stackoverflow.com stackoverflow.com
-
https://github.com/rycus86/githooks is a really option for managing hooks It is... safe (it uses an opt-in model, where it will ask for confirmation whether new or changed scripts should be run or not (or disabled)) configurable handles a lot of the details for you lets you keep your hooks nicely organized. For example:
-