1,368 Matching Annotations
  1. Last 7 days
    1. Getting hooked on computers is easy—almost anybody can make a program work, just as almost anybody can nail two pieces of wood together in a few tries. The trouble is that the market for two pieces of wood nailed together—inexpertly—is fairly small outside of the "proud grandfather" segment, and getting from there to a decent set of chairs or fitted cupboards takes talent, practice, and education.

      This is a great analogy

    2. the Peter Principle, the idea that in an organization where promotion is based on achievement, success, and merit, that organization's members will eventually be promoted beyond their level of ability

      Applying the principle to software, you will find that you need three different versions of the make program, a macroprocessor, an assembler, and many other interesting packages. At the bottom of the food chain, so to speak, is libtool, which tries to hide the fact that there is no standardized way to build a shared library in Unix. Instead of standardizing how to do that across all Unixen the Peter Principle was applied and made it libtool's job instead.

    1. Esta necesidad de recompensa adicional, apoyo, y el reconocimiento por el trabajo reproducible es un problema de infraestructura institucional, especialmente en la academia, donde las métricas de promoción y tenencia están vinculadas explícitamente a los documentos y, a menudo, no tienen en cuenta el software reutilizable.

      Es fundamental que las instituciones reconozcan y respalden activamente el trabajo reproducible, considerando tanto los documentos como el software, para fortalecer la integridad científica y la calidad de la investigación. El texto sugiere que los investigadores que se esfuerzan por lograr la reproducibilidad en su trabajo merecen recompensas adicionales y apoyo. Esto es crucial para fomentar prácticas científicas sólidas y motivar a los académicos a invertir tiempo y esfuerzo en la reproducibilidad. La falta de reconocimiento por el trabajo reproducible es un problema. A menudo, las métricas de promoción y tenencia en la academia se centran en documentos (como publicaciones) y no consideran adecuadamente el software reutilizable. Esto puede desincentivar a los investigadores a dedicar tiempo a crear y compartir herramientas y códigos que faciliten la reproducibilidad. Las instituciones académicas deben revisar sus políticas y prácticas para abordar este problema. Esto podría incluir la creación de incentivos específicos para el desarrollo y la publicación de software reutilizable, así como la valoración explícita de la contribución a la reproducibilidad en las evaluaciones de los académicos.

      http://www.lcc.uma.es/~galvez/ftp/tad/tadtema1.pdf

  2. Apr 2024
    1. This is not a discrete project but an ongoing process and should always be competing for focus in strategic decision making.

      Absolutely agreed. One limitation of the Iron Triangle concept is that it often seems to be used to make decisions based on a snapshot in time (i.e. which two are we choosing now), when some choices have longer half-lives than others.

    1. Adiciones o sustracciones compatibles con versiones anteriores incrementan la versión menor, y cambios en el API incompatibles con versiones anteriores incrementan la versión mayor

      Por ultimo en este parrafo, se puede entender que se pueden agregar o eliminar cambios, pero que no afecten a el software y la compatibilidad de sus versiones y actualizaciones, ya que de esta manera se podra ejecutar y actualizar versiones sin novedad alguna y sin la preocupacion de que el software deje de funcionar.

      • Cuando se presenta un cambio en la API, puede que se presente incompatibilidad de versiones y el software anterior ya no tenga conexion o responda a este cambio realizado, ya sea por modificacion local, cambio de nombres o ubicacion renombrada
  3. Mar 2024
    1. By jumping into unfamiliar areas of code, even if you do not "solve" the bug, you can learn new areas of the code, tricks for getting up to speed quickly, and debugging techniques.

      Building a mental model of the codebase, as Jennifer Moore says over at Jennifer++:

      The fundamental task of software development is not writing out the syntax that will execute a program. The task is to build a mental model of that complex system, make sense of it, and manage it over time.

    2. Thinking about how you will observe whether things are working correctly or not ahead of time can also have a big impact on the quality of the code you write.

      YES. This feel similar to the way that TDD can also improve the code that you write, but with a broader/more comprehensive outlook.

  4. Feb 2024
    1. HOA & Community Association Management Software

      Our HOA software is a comprehensive solution for effective community management. It offers invoicing, dues collection, financial management, communication tools, an owner portal, and more!

    1. Property Management

      PropGOTO is a leading-edge real estate and property management software, offering a comprehensive, secure, and reliable solution. Developed by industry experts, our user-centric design ensures a seamless experience. With a focus on customer benefits, our innovative features streamline tasks and enhance communication. We provide best-in-class property management software with rich and exhaustive set of features, ensuring scalability for businesses of all sizes. Experience the future of property management with PropGOTO – where innovation meets reliability and user satisfaction is our priority.

      Book a Free Demo

  5. Jan 2024
    1. Using an issue tracker without them is, in my opinion, a little like using an outlining program that only supports two levels of nesting, or like using Wiki software that doesn't have the concept of reverse links. Makes me sad!
    1. Display product requirements, user flows, and design behaviors on each screen.
    2. Document what to build and how designs should behave in a central, searchable, collaborative place for the entire product team.
    1. Division of labor is an extremely mature state for a society. Aiming prematurely for it is counterproductive. Rather than try to imitate more mature domains, start from scratch and see what this domain ends up needing."
  6. Dec 2023
  7. Nov 2023
    1. As our app grows, an increasing amount of random code is landing in the app/services directory. I'm worried it will become impractical to improve on this, as the number of special cases will only increase. Some pain points off the top of my head (definitely not exhaustive):
    1. I'm assuming some of the goals are to make it clear where to put new files (and to stay within current Rails conventions). We already have a few non-standard app folders in our project, such as app/services, app/queries, etc. and we put some non-ActiveRecord classes in app/models. If we are going to move files, it might make sense to first define where files should go, and then move each file to the appropriate place. This might be more of a reorganization project, than copying over a folder.
    1. How to set up and validate locally Access content editor in wikis or in issues behind a feature flag :content_editor_on_issues. Copy some text from Google docs or any rich text document Press Cmd/Ctrl + Shift + V to paste raw text.
    1. A more efficient but more complicated way to simulate perfect guessing is to guess both options simultaneously

      NB: Russ talking here about flattening the NFA into a DFA that has enough synthesized states to represent e.g. in either state A or state B. He's not talking about CPU-level concurrency. But what if he were?

    1. Staff augmentation for P2P investment platform

      Expore how software development company (Globaldev) helped a FinTech company that operates a P2P investment platform to build several R&D teams to support the company’s requirements and growth plans.

    1. Data and analytics engineers for Gentrack Logical Data Model

      Are you thinking of transforming energy and utilities sector with the world’s leading solutions​​or or even almost ready to get down to business? If so, you need a trusted software development partner for this. And it's a tough decision. Meet our client - Gentrack -leading New Zealand technology company engaged in the development, integration, and support of interactive cleantech solutions for the utility and airport industries across the globe. Now, if you are interested, take a look on how Globaldev together with Gentrack has designed and developed a completely new data and analytics layer called Gentrack Logical Data Model (GLDM) to process a wealth of data.

    1. Loan processing system with a custom admin panel

      Automation, security and performance improvements have always been markers of progress among financial institutions.

      To grow and to innovate in this field you need a reliable financial software development company. With our deep domain knowledge and strong technical base we will develop and implement advanced software solutions tailored for your business. Get more information about loan processing system with a custom admin panel.

  8. Oct 2023
    1. HTML had blown open document publishing on the internet

      ... which may have really happened, per se, but it didn't wholly incorporate (subsume/cannibalize) conventional desktop publishing, which is still in 2023 dominated by office suites (a la MS Word) or (perversely) browser-based facsimiles like Google Docs. Because the Web as it came to be used turned out to be as a sui generis medium, not exactly what TBL was aiming for, which was giving everything (everything—including every existing thing) its own URL.

    1. The RWC was developed by The Language Conservancy (TLC), an NGO dedicated to protecting around 50 Indigenous languages around the world, in order to churn out such dictionaries at super-speed. TLC, which has a $3 million budget, regularly teams up linguists with Native American language teachers to work on these dictionaries.
    2. The women are working with Rapid Word Collection (RWC) software, which uses an algorithm to search Apache text and audio databases for so-called forgotten words.
    1. Rather than dealing with the invariably convoluted process of moving my content between systems — exporting it from one, importing it into another, fixing any incompatibilities, maybe removing some things that I can’t find a way to port over — I drop my Markdown files into the new website and it mostly Just Works.

      What if you just dropped your pre-rendered static assets into the new system?

  9. Sep 2023
    1. Day One for me has created journal nirvana, in the same way that Things created multi-platform to do syncing and iA Writer perfected multi-platform text editing.
    1. For example, still not over the death of Google Reader after all these years? Why not host your own RSS aggregator like Sismics Reader that nobody can ever take away from you?
    1. there are currently no laws or 00:10:29 standards that govern how to use certain kinds of products machine learning products or AI products - and for what purpose right so there are no there's 00:10:41 there's no restrictions so we don't know if like these algorithms that are being used by law enforcement are breaking certain laws we don't know if algorithms that are being used for hiring our breaking Equal Employment Opportunity

      Here Gebru questions the common belief that law enforcement and employers are trustworthy.

    1. I'm curious: what is the reason for Yahoo discontinuing the "@ymail.com" domain?I'm aware that there's now a 2nd domain option available, "@myyahoo.com", and I recently took advantage of that to create a new address. But "@ymail.com" honestly looks more appealing to me than either of the "yahoo" iterations.
  10. Aug 2023
    1. Serializing the data with a function specialized to your data shape can be more than 10x compared with JSON.stringify.
    1. In computing, the robustness principle is a design guideline for software that states: "be conservative in what you do, be liberal in what you accept from others". It is often reworded as: "be conservative in what you send, be liberal in what you accept". The principle is also known as Postel's law, after Jon Postel, who used the wording in an early specification of TCP.

      https://en.wikipedia.org/wiki/Robustness_principle

      Robustness principle: be conservative in what you do, be liberal in what you accept from others.

    1. Global Engineering

      Unleash the power of custom software! Hey, business owner! Tired of one-size-fits-all software solutions? It's time to go custom! At GlobalDev, we're wizards of custom software development services. We understand your unique needs and tailor software that fits like a comfy pair of sneakers. With us, you get top-notch quality and flexibility—just the way you like it!

    1. Does anyone has it’s Zettelkasten in Google Docs, Microsoft Word or Plain Tex (without a hood app like obsidian or The Archive)? .t3_15fjb97._2FCtq-QzlfuN-SwVMUZMM3 { --postTitle-VisitedLinkColor: #9b9b9b; --postTitleLink-VisitedLinkColor: #9b9b9b; --postBodyLink-VisitedLinkColor: #989898; }

      reply to u/Efficient_Earth_8773 at https://www.reddit.com/r/Zettelkasten/comments/15fjb97/does_anyone_has_its_zettelkasten_in_google_docs/

      Experimenting can be interesting. I've tried using spreadsheet software like Google Sheets or Excel which can be simple and useful methods that don't lose significant functionality. I did separate sheets for zettels, sources, and the index. Each zettel had it's own row with with a number, title, contents, and a link to a source as well as the index.

      Google Docs might be reasonably doable, but the linking portion may be one of the more difficult affordances to accomplish easily or in a very user-centric fashion. It is doable though: https://support.google.com/docs/answer/45893?hl=en&co=GENIE.Platform%3DDesktop, and one might even mix Google Docs with Google Sheets? I could see Sheets being useful for creating an index and or sources while Docs could be used for individual notes as well. It's all about affordances and ease of use. Text is a major portion of having and maintaining a zettelkasten, so by this logic anything that will allow that could potentially be used as a zettelkasten. However, it helps to think about how one will use it in practice on a day-to-day basis. How hard will it be to create links? Search it? How hard will it be when you've got thousands of "slips"? How much time will these things take as it scales up in size?

      A paper-based example: One of the reasons that many pen and paper users only write on one side of their index cards is that it saves the time of needing to take cards out and check if they do or don't have writing on the back or remembering where something is when it was written on the back of a card. It's a lot easier to tip through your collection if they're written only on the front. If you use an alternate application/software what will all these daily functions look like compounded over time? Does the software make things simpler and easier or will it make them be more difficult or take more time? And is that difficulty and time useful or not to your particular practice? Historian and author David McCullough prefers a manual typewriter over computers with keyboards specifically because it forces him to slow down and take his time. Another affordance to consider is how much or little work one may need to put into using it from a linking (or not) perspective. Using paper forces one to create a minimum of at least one link (made by the simple fact of filing it next to another) while other methods like Obsidian allow you to too easily take notes and place them into an infinitely growing pile of orphaned notes. Is it then more work to create discrete links later when you've lost the context and threads of potential arguments you might make? Will your specific method help you to regularly review through old notes? How hard will it be to mix things up for creativity's sake? How easy/difficult will it be to use your notes for writing/creating new material, if you intend to use it for that?

      Think about how and why you'd want to use it and which affordances you really want/need. Then the only way to tell is to try it out for a bit and see how one likes/doesn't like a particular method and whether or not it helps to motivate you in your work. If you don't like the look of an application and it makes you not want to use it regularly, that obviously is a deal breaker. One might also think about how difficult/easy import/export might be if they intend to hop from one application to another. Finally, switching applications every few months can be self-defeating, so beware of this potential downfall as you make what will eventually need to be your ultimate choice. Beware of shiny object syndrome or software that ceases updating in just a few years without easy export.

  11. Jul 2023
    1. To permanently disable real-time protection: Open Local Group Policy Editor (type gpedit in the search box). Go to Computer Configuration > Administrative Templates > Windows Components > Microsoft Defender Antivirus > Real-time Protection. Enable "Turn off real-time protection". Reboot.

      How to Permanently Disable Real-Time Protection

    1. I tried precompiling the JavaScript code to QuickJS bytecode (to avoid parsing overhead), but that only saved about 40 milliseconds (I guess parsing is really fast!).
    1. It costs be-tween ½ and 2 times as much to build amodule with a clean interface that iswell-designed for your system as to justwrite some code

      I believe it, but I would have liked to have seen a reference for this claim.

    2. only a small fraction of the features of each component, and your program con-sumes 10 or 100 times the hardware resources of a fully custom program, butyou write 10% or 1% of the code you would have written 30 years ago.

      You use only a small fraction of the features of each component, and your program consumes 10 or 100 times the hardware resources of a fully custom program, but you write 10% or 1% of the code you would have written 30 years ago.

    1. To me this gets to the heart of the teaching of mathematics. There are (at least) two distinct skills: The mechanical system of converting one thing to another using an array of symbols The translation system mapping those moves onto the world. We can emphasise the mechanical (the approach of most school systems) or we can emphasise the translation (the approach of Conrad Wolfram and others who argue that computers should do the calculation).

      Feels very similar to the skills required to model real-world systems in computer programs.

  12. Jun 2023
    1. Platform engineering is trying to deliver the self-service tools teams want to consume to rapidly deploy all components of software. While it may sound like a TypeScript developer would feel more empowered by writing their infrastructure in TypeScript, the reality is that it’s a significant undertaking to learn to use these tools properly when all one wants to do is create or modify a few resources for their project. This is also a common source of technical debt and fragility. Most users will probably learn the minimal amount they need to in order to make progress in their project, and oftentimes this may not be the best solution for the longevity of a codebase. These tools are straddling an awkward line that is optimized for no-one. Traditional DevOps are not software engineers and software engineers are not DevOps. By making infrastructure a software engineering problem, it puts all parties in an unfamiliar position. I am not saying no-one is capable of using these tools well. The DevOps and software engineers I’ve worked with are more than capable. This is a matter of attention. If you look at what a DevOps engineer has to deal with day-in and day-out, the nuances of TypeScript or Go will take a backseat. And conversely, the nuances of, for example, a VPC will take a backseat to a software engineer delivering a new feature. The gap that the AWS CDK and Pulumi try to bridge is not optimized for anyone and this is how we get bugs, and more dangerously, security holes.
    1. Five core layers: 1. Presentation Layer 2. Application Layer 3. Domain Layer 4. Persistence Layer 5. Database Layer

    2. In the layered architecture pattern, each layer fulfills a specific responsibility and role within the application. Some focus on user interface logic, while others handle the execution of business rules. These layers complement each other's unique purposes, but they aren't explicitly reliant on one another to perform their own tasks.
    3. In software architecture, layers act as individual processes within the infrastructure of an application. These layers typically form a pattern, also called the n-tier architecture pattern.
    1. Making a property writable adds an order of magnitude in complexity. In the real world it's definitely not realistic for every class to be immutable, but if most of your classes are, it's remarkably easier to write bug-free code. I had that revelation once and I hope to help others have it.
    1. The major use case of Reflect is to provide default forwarding behavior in Proxy handler traps. A trap is used to intercept an operation on an object — it provides a custom implementation for an object internal method. The Reflect API is used to invoke the corresponding internal method. For example, the code below creates a proxy p with a deleteProperty trap that intercepts the [[Delete]] internal method. Reflect.deleteProperty() is used to invoke the default [[Delete]] behavior on targetObject directly.
    1. 10% more or less of academic libraries in the US use an open source system after all that time. And about either 17 or 14, I'd have the number in front of me for and to public libraries are using an open source I L S

      Percentage of open source ILS in academic and public libraries

    1. This analysis will result in the form of a new knowledge-based multilingual terminological resource which is designed in order to meet the FAIR principles for Open Science and will serve, in the future, as a prototype for the development of a new software for the simplified rewriting of international legal texts relating to human rights.

      software to rewrite international legal texts relating to human rights, a well written prompt and a few examples, including the FAIR principles will let openAI's chatGPT do it effectively.

  13. May 2023
    1. If you doubt my claim that internet is broad but not deep, try this experiment. Pick any firm with a presence on the web. Measure the depth of the web at that point by simply counting the bytes in their web. Contrast this measurement with a back of the envelope estimate of the depth of information in the real firm. Include the information in their products, manuals, file cabinets, address books, notepads, databases, and in each employee's head.
    1. Incidentally, when a straightforwardly “I’m a Nazi” Nazi showed up in the beta, people used the report function, and the Bluesky team labeled the account and banned it from the Bluesky app and restricted promotion of the account of the person who invited him. This changed exactly none of the tenor of the Nazi conversation on Mastodon, but it happened.

      Now just imagine the equivalent on the scale of an entire server and you've got the story of Mastodon's incredibly centralized, swift expulsion of Gab's influence. Here's The Verge's version for the moment.

    1. The transition from an idea to a successful product may be challenging and full of unexpected pitfalls. Harvard Business Review states that roughly 65% of projects end up failing, wasting a lot of resources.

      DISCOVERY PHASE OF A SOFTWARE PROJECT

    1. The Web does not yet meet its design goal as being a pool of knowledge that is as easy to update as to read. That level of immediacy of knowledge sharing waits for easy-to-use hypertext editors to be generally available on most platforms. Most information has in fact passed through publishers or system managers of one sort or another.