1,119 Matching Annotations
  1. Last 7 days
    1. 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?

    2. 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.

    1. 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.

  2. May 2022
    1. If you paste a message from somewhere else that spans multiple lines, you can quote that without having to manually prepend > to every line!
    1. 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.

    Tags

    Annotators

    1. 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).

    1. 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)...

    1. 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.

  3. Apr 2022
    1. 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.

    1. 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.
    1. 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
    1. 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

    1. 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.

    1. 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.

    2. 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.
    3. 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
  4. www.research-collection.ethz.ch www.research-collection.ethz.ch
    1. 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

    1. 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.

    1. 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`).

    2. CSP is taking away too much of the user's power and control over their browser use
    3. 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.

  5. Mar 2022
    1. 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.

    1. 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.

  6. citeseerx.ist.psu.edu citeseerx.ist.psu.edu
    1. 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.
    1. 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?

    1. 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**
  7. rom-rb.org rom-rb.org
    1. 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
    1. 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].)

      1. https://upload.wikimedia.org/wikipedia/commons/0/01/Monodevelop-main-window.png
    1. 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.

    1. 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.
    1. 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.

    1. 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.
  8. Feb 2022
    1. 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);
    1. “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.

    1. 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.

    1. 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.

    1. 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.

    1. 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.
    1. 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.

    1. 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*

    1. 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

  9. Jan 2022
    1. <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}
    1. 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.
    1. 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.

    1. 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.

    1. 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.

    1. 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.

  10. Dec 2021
    1. Desired workflow:

      1. I navigate to the APL login page https://austin.bibliocommons.com/user/login
      2. I invoke a bookmarklet on the login page that opens a new browser window/tab
      3. In the second tab, I navigate here—to a locally saved copy of (a facsimile of) my library card
      4. I invoke a bookmarklet on my library card to send the relevant details to the APL login page using window.postMessage
      5. 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.)

    1. 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.

    1. 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???

    1. 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?
    1. 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.

    1. How to Choose the Right Marketplace Development Company?DmitryCEOMarketplaceHomeBlogEntrepreneurshipHow to Choose the Right Marketplace Development Company?PublishedMay 8, 2020UpdatedMay 8, 20209 min readDo you want to build a marketplace app but cannot choose the right marketplace development company? There are dozens of web agencies, and their services seem to be quite similar. So how can you know whether you can trust a software provider? We have a solution for you. In this article, we have prepared the most important factors you need to take into account when choosing a marketplace development agency.

      Do you want to build a marketplace app but cannot choose the right marketplace development company? There are dozens of web agencies, and their services seem to be quite similar. So how can you know whether you can trust a software provider?

      We have a solution for you. In this article, we have prepared the most important factors you need to take into account when choosing a marketplace development agency.

    1. How to Create a Micro-Job Marketplace Like Fiverr: Features, Cost, TimelineTimurTech JournalistMarketplaceProduct GuideHomeBlogEntrepreneurshipHow to Create a Micro-Job Marketplace Like Fiverr: Features, Cost, TimelinePublishedNov 19, 2021UpdatedNov 19, 202120 min readIt’s no secret that the COVID-19 pandemic has led many people to reconsider their jobs. Now, freelance as an alternative career path steadily becomes a reality. 50.9% of the U.S. workforce will be freelancing by 2027, a Statista survey shows. Businesses like Fiverr and fellow gig-focused companies rode the wave. To be more precise, they adopted a model allowing the hire of independent contractors without any legwork. How do such tools set the new trend in powering freelancers? In this article, we share proven methods geared towards freelance website growth. Moreover, you will get a glimpse of how to create a micro-job marketplace like Fiverr of your own.

      It’s no secret that the COVID-19 pandemic has led many people to reconsider their jobs. Now, freelance as an alternative career path steadily becomes a reality. 50.9% of the U.S. workforce will be freelancing by 2027, a Statista survey shows.

      Businesses like Fiverr and fellow gig-focused companies rode the wave. To be more precise, they adopted a model allowing the hire of independent contractors without any legwork. How do such tools set the new trend in powering freelancers?

      In this article, we share proven methods geared towards freelance website growth. Moreover, you will get a glimpse of how to create a micro-job marketplace like Fiverr of your own.

  11. Nov 2021
    1. How to Create a Minimum Viable Product (MVP): Best Examples and Key BenefitsDmitryCEOMVPProduct GuideHomeBlogEntrepreneurshipHow to Create a Minimum Viable Product (MVP): Best Examples and Key BenefitsPublishedFeb 14, 2019UpdatedNov 26, 202139 min readAs an entrepreneur, you may eventually come to the point of planning a startup and launching your software product. Initially, you only have the idea of the project. What’s next? MVP development for startups is something that will help you at the beginning. You will learn what it is from this article. But first, some statistics. In 2020 the failure rate of startups exceeded 90%. And Euler Hermes’ latest research is even more disappointing. It shows that the number of global business bankruptcies will have increased by 15% by 2022. Can you guess what the reason is? It is a lack of demand among the users in the market. That’s why when you have a brilliant idea, do not rush building a fully-featured product and spending months on hard work. There’s a more efficient way to initially understand whether your idea will be required in the market. And this implies developing a minimum viable product (MVP). This popular approach in startup product development will help you test your business idea and save both time and resources. This way, you understand what users need and can create an offering that they are ready to pay for. Thanks to this article, you will know how to define a minimum viable product. You will also learn all about the MVP approach. We will start with the definition of this term and take a look at the best minimum viable products built by famous companies. Finally, we will provide you with a step-by-step guide on how to create a minimum viable product.

      Thanks to this article, you will know how to define a minimum viable product. You will also learn all about the MVP approach. We will start with the definition of this term and take a look at the best minimum viable products built by famous companies. Finally, we will provide you with a step-by-step guide on how to create a minimum viable product.

    1. How to Choose a Reliable SaaS Application Development CompanyKateCloud & SaaS Product ResearcherDmitryCEOSaaSHomeBlogEntrepreneurshipHow to Choose a Reliable SaaS Application Development CompanyPublishedAug 5, 2020UpdatedAug 5, 202012 min readCurrently, SaaS is the largest segment of the global public cloud services market. The growing SaaS industry provides an equal-opportunity atmosphere for businesses. It concerns enterprises from startups to tech giants – and any size in between. It explains why traditional software companies, like Microsoft and Adobe, decided to look into that direction too. Indeed, the time is ripe for developing a SaaS application now. But however tempting it may be, do not dive in headfirst with launching a SaaS product, because sometimes, it can be very challenging. That is why we have prepared a guide on finding a SaaS application development company that will be your best bet.

      Looking to build a SaaS app? You will need help of a reliable development team. Check our advice on how to choose a SaaS development company.

    1. Avoid These Costly Mistakes During Web Application DevelopmentDmitryCEOCustom SoftwareHomeBlogTechnologyAvoid These Costly Mistakes During Web Application DevelopmentPublishedJan 16, 2020UpdatedJan 16, 202015 min readAccording to the Startup Genome Report, over 90% of startups fail after launch. There can be different reasons like skipping the market research, hiring wrong specialists, too early scaling, and so on. However, one of the most important elements of startup success is the product you provide. Neglecting estimates, avoiding the MVP stage, designing unnecessary functionality, and saving time on testing may become fatal errors that can result in a complete failure. In this article, we will tell you about the most costly mistakes you should avoid during web app development to succeed after product launch.

      According to the Startup Genome Report, over 90% of startups fail after launch. There can be different reasons like skipping the market research, hiring wrong specialists, too early scaling, and so on.

      However, one of the most important elements of startup success is the product you provide. Neglecting estimates, avoiding the MVP stage, designing unnecessary functionality, and saving time on testing may become fatal errors that can result in a complete failure.

      In this article, we will tell you about the most costly mistakes you should avoid during web app development to succeed after product launch.

    1. Do you have a high-quality and almost irresistible application in your bag? Your potential customers will not enjoy your app to the full if they cannot access it easily and quickly. That is why you need to consider how to choose the right SaaS hosting provider carefully. In this article, we will review different SaaS cloud hosting options and their strengths and weaknesses. Read on to find out how to make hosting for your SaaS application reliable, cost-effective, and scalable.

      Do you have a high-quality and almost irresistible application in your bag? Your potential customers will not enjoy your app to the full if they cannot access it easily and quickly. That is why you need to consider how to choose the right SaaS hosting provider carefully.

      In this article, we will review different SaaS cloud hosting options and their strengths and weaknesses. Read on to find out how to make hosting for your SaaS application reliable, cost-effective, and scalable.

    1. 4 Best Payment Solutions for Online MarketplacesDmitryCEOMarketplaceHomeBlogEntrepreneurship4 Best Payment Solutions for Online MarketplacesPublishedAug 7, 2020UpdatedAug 7, 20209 min readDid you know that payment solutions for online marketplaces can shape your e-commerce business and its success? Thus, Uber succeeded in its global expansion right after it switched to Braintree. In early Uber’s scaling, even a dollar-euro currency conversion wasn’t available. Now, with Braintree, it processes mobile payments in 130 currencies in 80+ countries. Of course, each marketplace faces its own payment challenges. So, you should rely on a payment solution with the features vital right for your e-commerce platform. To identify them, let’s dig deeper into two-sided marketplace payment processing, and analyze the best payment gateways for marketplaces.

      Did you know that payment solutions for online marketplaces can shape your e-commerce business and its success? Thus, Uber succeeded in its global expansion right after it switched to Braintree.

      In early Uber’s scaling, even a dollar-euro currency conversion wasn’t available. Now, with Braintree, it processes mobile payments in 130 currencies in 80+ countries.

      Of course, each marketplace faces its own payment challenges. So, you should rely on a payment solution with the features vital right for your e-commerce platform. To identify them, let’s dig deeper into two-sided marketplace payment processing, and analyze the best payment gateways for marketplaces.

    1. Spree Commerce: How to Quickly Build an Ecommerce WebsiteAlinaE-Commerce & SaaS StrategistMarketplaceProduct GuideHomeBlogEntrepreneurshipSpree Commerce: How to Quickly Build an Ecommerce WebsitePublishedAug 31, 2020UpdatedAug 31, 202011 min readThe hype around Amazon and eBay has driven up the demand for marketplace development services. Business owners turn to software consultancies to launch a thriving e-commerce website. Here comes a question: what do they need to get the most successful online marketplace website? We believe that a profitable e-commerce project starts with the right tech stack. The main qualities that a modern marketplace should possess are scalability, easy customizations, and flexibility. Therefore, it’s important to choose the technologies that will help these qualities.

      The hype around Amazon and eBay has driven up the demand for marketplace development services. Business owners turn to software consultancies to launch a thriving e-commerce website. Here comes a question: what do they need to get the most successful online marketplace website?

      We believe that a profitable e-commerce project starts with the right tech stack. The main qualities that a modern marketplace should possess are scalability, easy customizations, and flexibility. Therefore, it’s important to choose the technologies that will help these qualities.

    1. 10 Best SaaS Startups in 2022 for Your InspirationDmitryCEOStartupSaaSHomeBlogEntrepreneurship10 Best SaaS Startups in 2022 for Your InspirationPublishedJul 29, 2020UpdatedNov 5, 202111 min readToday, the SaaS industry is gaining momentum. According to research, 80% of businesses already use at least one SaaS application. Hence, building a SaaS company is currently a skyrocketing business idea. To help you find inspiration and launch the best SaaS startup ever, in this article you will find 10 great examples of SaaS startups you can learn from. All of them produce valuable and fast-growing products for now. Likewise, Growthlist and AngelList marked them as promising SaaS startups of 2021-2022. Without further ado, let’s take a closer look at them.

      Today, the SaaS industry is gaining momentum. According to research, 80% of businesses already use at least one SaaS application. Hence, building a SaaS company is currently a skyrocketing business idea.

      To help you find inspiration and launch the best SaaS startup ever, in this article you will find 10 great examples of SaaS startups you can learn from. All of them produce valuable and fast-growing products for now. Likewise, Growthlist and AngelList marked them as promising SaaS startups of 2021-2022.

      Without further ado, let’s take a closer look at them.

    1. 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.
    2. 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.
    1. 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.

    1. POC vs MVP: What to Choose to Build a Great ProductDmitryCEOMVPHomeBlogEntrepreneurshipPOC vs MVP: What to Choose to Build a Great ProductPublishedNov 10, 2021UpdatedNov 11, 202115 min readWhen it comes to creating a new product or implementing a new feature, you need to test it first. The best way to do so is to check your idea with the appropriate steps. There are several software product stages: PoC, prototype, MVP, etc. What is the difference between proof of concept vs. MVP? Why are these stages essential? When should you build a Minimum Viable Product? This article focuses on two fundamental approaches that help test your idea quickly and create a successful solution.

      When it comes to creating a new product or implementing a new feature, you need to test it first. The best way to do so is to check your idea with the appropriate steps. There are several software product stages: PoC, prototype, MVP, etc.

      What is the difference between proof of concept vs. MVP? Why are these stages essential? When should you build a Minimum Viable Product?

      This article focuses on two fundamental approaches that help test your idea quickly and create a successful solution.

    1. 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
    1. 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).
    2. 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.
    3. 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.
    4. 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.
  12. Oct 2021
    1. 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.

    1. 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.
    2. 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.
    3. 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.
    4. 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.
    5. 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.
    6. 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.
    1. Choosing a PWA Development Company: Key Points to ConsiderAlinaE-Commerce & SaaS StrategistDmitryChief Executive OfficerPWAHomeBlogEntrepreneurshipChoosing a PWA Development Company: Key Points to ConsiderNov 10, 202012 min readThe term “progressive web application” has been floating around recently. So what are PWAs: a buzzword or a decent alternative to native apps? Codica team firmly believes that this technology can be beneficial for businesses. It is not by chance that we have added PWA apps to our list of prominent web development trends for 2020. This technology offers users an app-like experience. Besides, progressive web applications are easy to install, launch, and maintain and they cost less compared with building native apps. To launch a successful progressive web application, you need to partner with a reliable PWA development company. Here comes the most difficult part. There are plenty of software houses offering similar services. The question is: How do you find the right one? To make things easier for you, we covered the key factors you need to consider while choosing a PWA development partner. Besides, in our article you will find out why building a PWA can be challenging even for experienced software development companies.

      Progressive web applications are considered one of the most important web development trends for 2021. PWAs are easy to launch and maintain, being a great alternative for native apps due to their cost-efficiency.

      In this article, we will discuss the main points of choosing the software provider for building your progressive web app.

    1. 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
    1. Leading SaaS Trends for 2021 You Shouldn’t MissDmitryChief Executive OfficerSaaSTrendsHomeBlogTechnologyLeading SaaS Trends for 2021 You Shouldn’t MissDec 1, 202012 min readNowadays, different kinds of businesses are extensively moving to the cloud. O’Reilly reports that 88% of the respondent companies had used cloud services before lockdown and expect their further growth by Q2 2021. Therefore, SaaS application development looks also like a profitable venture today. Yet, to stay afloat in the cloud arena, you need to arm your offering with precise technology and fresh tools. In other words, you need to keep your eye on the future of SaaS. To help you deploy the promptest cloud solutions, in this post, I collected the top SaaS trends for 2021.

      SaaS application development looks also like a profitable venture today. Yet, to stay afloat in the cloud arena, you need to arm your offering with precise technology and fresh tools. In other words, you need to keep your eye on the future of SaaS.

      To help you deploy the promptest cloud solutions, in this post, I collected the top SaaS trends for 2021.

    1. 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.

    1. Vue.js vs React: Comparison of Two Most Popular JS FrameworksEugeneFrontend DeveloperVueReactHomeBlogDevelopmentVue.js vs React: Comparison of Two Most Popular JS FrameworksSep 23, 202126 min readNowadays, every company aims to create a high-quality web solution within a short time frame. To put it into practice, the developers’ community chooses from many JavaScript libraries and frameworks and debates to find the best one. At Codica, we consider Vue.js and ReactJS the most rapidly developing tools for the front-end development for many reasons. While these technologies can help create the same products and applications, both of them have pros and cons. The purpose of this article is to compare Vue.js vs React.js in different aspects: from general information to technical features. Both these web development tools have mature communities, wide support and popularity, but Vue.js is a framework and React is a library. So, why do we compare oranges and apples?

      Nowadays, every company aims to create a high-quality web solution within a short time frame. To put it into practice, the developers’ community chooses from many JavaScript libraries and frameworks and debates to find the best one.

      At Codica, we consider Vue.js and ReactJS the most rapidly developing tools for the front-end development for many reasons. While these technologies can help create the same products and applications, both of them have pros and cons.

      The purpose of this article is to compare Vue.js vs React.js in different aspects: from general information to technical features. Both these web development tools have mature communities, wide support and popularity, but Vue.js is a framework and React is a library. So, why do we compare oranges and apples?