1,374 Matching Annotations
  1. Sep 2021
    1. 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

  2. Aug 2021
    1. 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.
    1. Question and Answer Website Development: Functionality and Best PracticesTimur YilmazTech JournalistMarketplaceProduct GuideHomeBlogEntrepreneurshipQuestion and Answer Website Development: Functionality and Best PracticesAug 25, 202117 min readSocial media is a jumping-off point for many people to get informed. Yet, on such platforms, users are more likely to voice opinions rather than share knowledge. That's when the websites to ask questions become a good help. For example, Quora's monthly active user base grew from 200 million to 300 million in 2018 alone. In 2021, the 6.6 million downloads of the Reddit app represented a 128% increase over the previous year. What is a selling point for this kind of platform and how to build one? How do they remain beneficial in a years-long run? How Q&A websites managed to survive social network dominance? Read on to find out.

      Social media is a jumping-off point for many people to get informed. Yet, on such platforms, users are more likely to voice opinions rather than share knowledge.

      That's when the websites to ask questions become a good help. For example, Quora's monthly active user base grew from 200 million to 300 million in 2018 alone. In 2021, the 6.6 million downloads of the Reddit app represented a 128% increase over the previous year.

      What is a selling point for this kind of platform and how to build one? How do they remain beneficial in a years-long run? How Q&A websites managed to survive social network dominance? Read on to find out.

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

    1. 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')[]
    1. Remitano clone script

      WeAlwin Technologies is a leading decentralized exchange development company and it has huge experience in white label Remitano clone script development. They have been serving their best white label Remitano clone script around the world and they are expertise in providing crypto exchange platforms with affordable prices. As a top-notch company they provide a first class solution for their clients requirement.

    1. Work From Home Trends: Future of Remote Working in Post Covid-19 WorldDmitry ChekalinChief Executive OfficerTrendsHomeBlogTechnologyWork From Home Trends: Future of Remote Working in Post Covid-19 WorldFeb 10, 202111 min readGlobal lockdown due to Covid-19 made companies extensively shift to working from home. Apparently, telecommuting integration turns out to be deeper than we all expected. It is clear now that online work from home is going to be the “new normal” in 2021 and beyond. As such, to stay on track, you need to keep your eye on upcoming changes. In this article, we collected the main remote work trends to help you better adapt to the post-pandemic era. Here, you will also learn the key reasons why remote working is the future.

      Global lockdown due to Covid-19 made companies extensively shift to working from home. Apparently, telecommuting integration turns out to be deeper than we all expected.

      It is clear now that online work from home is going to be the “new normal” in 2021 and beyond. As such, to stay on track, you need to keep your eye on upcoming changes.

      In this article, we collected the main remote work trends to help you better adapt to the post-pandemic era. Here, you will also learn the key reasons why remote working is the future.

    1. How to Make a React Progressive Web Application (PWA)Eugene VolkovFrontend DeveloperKate KikidzhanCloud & SaaS Product ResearcherReactJavaScriptPWAHomeBlogDevelopmentHow to Make a React Progressive Web Application (PWA)Oct 7, 202021 min readThe early bird catches the worm. But the situation was not so favourable back in 2007 when Steve Jobs proposed the idea of web applications to be the model for iPhone Apps. Back then, the tech community was not yet ready to bring a huge interest in web apps. But since 2015, tech giants like Google and Microsoft have been preparing the tech ground for progressive web apps (or simply – PWAs). And now, PWA became a must-have technology for both giant corporations and small startups. Twitter, Starbucks, Google, and Aliexpress use progressive web apps to boost their online presence. At Codica, we have been helping our customers to develop their businesses by building robust PWA for our customers since 2015. That is why we have created this comprehensive guide on how to create a PWA with React. Also, you will see the most prominent progressive web app examples.

      The early bird catches the worm. But the situation was not so favourable back in 2007 when Steve Jobs proposed the idea of web applications to be the model for iPhone Apps. Back then, the tech community was not yet ready to bring a huge interest in web apps.

      But since 2015, tech giants like Google and Microsoft have been preparing the tech ground for progressive web apps (or simply – PWAs). And now, PWA became a must-have technology for both giant corporations and small startups. Twitter, Starbucks, Google, and Aliexpress use progressive web apps to boost their online presence.

      At Codica, we have been helping our customers to develop their businesses by building robust PWA for our customers since 2015. That is why we have created this comprehensive guide on how to create a PWA with React. Also, you will see the most prominent progressive web app examples.

    1. SaaS vs PaaS vs IaaS: Choosing the Best Cloud Computing ModelAlina NechvolodE-Commerce & SaaS StrategistSaaSHomeBlogTechnologySaaS vs PaaS vs IaaS: Choosing the Best Cloud Computing ModelJun 12, 202011 min readThe usage of cloud computing has long been a standard practice for businesses. More and more companies harness the power of the software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS) models. Thus, they can save on hardware and protect their sensitive information from hacking and internal data theft. In this article, we discuss the SaaS vs PaaS vs IaaS models and define their principal differences. What are the core parameters for comparison? They include primary characteristics, usage, the main benefits, and drawbacks.

      The usage of cloud computing has long been a standard practice for businesses. More and more companies harness the power of the software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS) models. Thus, they can save on hardware and protect their sensitive information from hacking and internal data theft.

      In this article, we discuss the SaaS vs PaaS vs IaaS models and define their principal differences. What are the core parameters for comparison? They include primary characteristics, usage, the main benefits, and drawbacks.

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

    1. Best SaaS Product Ideas You Should Try in 2021Kate KikidzhanCloud & SaaS Product ResearcherSaaSStartupHomeBlogEntrepreneurshipBest SaaS Product Ideas You Should Try in 2021May 6, 202117 min readIn 2020, the cloud market and its most notable players, such as Google, Microsoft, Adobe, and Salesforce, cannot be taken lightly. Cloud software distribution, namely SaaS, PaaS, and IaaS models, invaded the technology world and will not go away any time soon. At the same time, the COVID-19 pandemic increased the importance of remote work for a business to survive, as well as high profitability. That is why the demand for SaaS solutions that tend to be more cost-effective has risen markedly. And we believe that it is better to ride the SaaS wave now rather than regret missed opportunities later. So we have prepared for you a list of SaaS product ideas that will be a great deal for cloud-based solutions for startups in 2021.

      In 2020, the cloud market and its most notable players, such as Google, Microsoft, Adobe, and Salesforce, cannot be taken lightly. Cloud software distribution, namely SaaS, PaaS, and IaaS models, invaded the technology world and will not go away any time soon. At the same time, the COVID-19 pandemic increased the importance of remote work for a business to survive, as well as high profitability.

      That is why the demand for SaaS solutions that tend to be more cost-effective has risen markedly. And we believe that it is better to ride the SaaS wave now rather than regret missed opportunities later.

      So we have prepared for you a list of SaaS product ideas that will be a great deal for cloud-based solutions for startups in 2021.

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

    1. How to Calculate the Cost to Build a SaaS App in 2021Dmitry ChekalinChief Executive OfficerAlina NechvolodE-Commerce & SaaS StrategistSaaSHomeBlogEntrepreneurshipHow to Calculate the Cost to Build a SaaS App in 2021Jan 6, 202114 min readHow much will it cost to build a SaaS app? If you decided to follow the latest trends and invest in SaaS development, this question is relevant more than ever. This blog post is written to help you clear up this matter. Here, we will cover in detail the main factors that define the final cost of building a SaaS product. They include the project scope and timeline, API integration, and the required functionality. Also, you will learn how the total cost of a completed software-as-a-service product changes depending on the chosen SaaS development service provider.

      How much will it cost to build a SaaS app? If you decided to follow the latest trends and invest in SaaS development, this question is relevant more than ever.

      This blog post is written to help you clear up this matter. Here, we will cover in detail the main factors that define the final cost of building a SaaS product. They include the project scope and timeline, API integration, and the required functionality.

      Also, you will learn how the total cost of a completed software-as-a-service product changes depending on the chosen SaaS development service provider.

    1. How Much Does it Cost to Create a Classifieds Website Like CraigslistDmitry ChekalinChief Executive OfficerAlina NechvolodE-Commerce & SaaS StrategistProduct GuideHomeBlogEntrepreneurshipHow Much Does it Cost to Create a Classifieds Website Like CraigslistDec 27, 201918 min readOnline classifieds websites have replaced printed ads in many ways. They help find a job, a place to live, a car, and other things we can’t do without in our everyday life. In addition, people actively use these platforms to buy or sell second-hand items. You have probably heard of Craigslist - this classifieds website is among the 20 most visited websites in the US. In this article, you will learn how to build a website like Craigslist. We will analyze how classifieds websites work, discuss revenue models that help reap profits from this type of online platform, and functionality they should have. Finally, you will take notice of the issues you may face when building a classifieds platform.

      Online classifieds websites have replaced printed ads in many ways. They help find a job, a place to live, a car, and other things we can’t do without in our everyday life. In addition, people actively use these platforms to buy or sell second-hand items.

      You have probably heard of Craigslist - this classifieds website is among the 20 most visited websites in the US.

      In this article, you will learn how to build a website like Craigslist. We will analyze how classifieds websites work, discuss revenue models that help reap profits from this type of online platform, and functionality they should have. Finally, you will take notice of the issues you may face when building a classifieds platform.

    1. How Much Does it Cost to Build a Website Like IndeedDmitry ChekalinChief Executive OfficerProduct GuideHomeBlogEntrepreneurshipHow Much Does it Cost to Build a Website Like IndeedJan 23, 202021 min readJob search websites have revolutionized the employer-employee relationships. No printed classifieds on the walls and no extra movements. Everything you need to do is to visit such a platform, enter the position details and choose the most relevant option to hire or apply for. Indeed is the most visited platform among other job-related online marketplaces. In this article, you will find out what makes Indeed so famous and special. Besides, we will discuss the challenges you may face before and during the development process, the things to consider before starting, and the functionality your platform should have. On the whole, you will know how to create a job search website like Indeed using 3 effective solutions.

      Job search websites have revolutionized the employer-employee relationships. No printed classifieds on the walls and no extra movements. Everything you need to do is to visit such a platform, enter the position details and choose the most relevant option to hire or apply for. Indeed is the most visited platform among other job-related online marketplaces.

      In this article, you will find out what makes Indeed so famous and special. Besides, we will discuss the challenges you may face before and during the development process, the things to consider before starting, and the functionality your platform should have. On the whole, you will know how to create a job search website like Indeed using 3 effective solutions.

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

    2. Only learn from the best. So when I was learning Go, I read the standard library.
    1. How much Does It Cost to Create a Bidding Website Like eBayDmitry ChekalinChief Executive OfficerMarketplaceProduct GuideHomeBlogEntrepreneurshipHow much Does It Cost to Create a Bidding Website Like eBayFeb 19, 202021 min readE-commerce platforms offer a greatly simplified shopping experience. People can purchase any kind of goods or services in a matter of minutes. We believe you have definitely heard of eBay - one of the most popular marketplaces in the world. This website gives you an opportunity to supply and purchase any product you can imagine. Hundreds of categories allow attracting lots of users interested in most of the spheres. This way, the platform generates an enormous profit. You may wonder how to build a website like eBay right? In this article, we will share steps on how to make a website like eBay, including the required functionality. Also, you will find out the pros and cons of auction websites.

      E-commerce platforms offer a greatly simplified shopping experience. People can purchase any kind of goods or services in a matter of minutes. We believe you have definitely heard of eBay - one of the most popular marketplaces in the world.

      This website gives you an opportunity to supply and purchase any product you can imagine. Hundreds of categories allow attracting lots of users interested in most of the spheres. This way, the platform generates an enormous profit. You may wonder how to build a website like eBay right?

      In this article, we will share steps on how to make a website like eBay, including the required functionality. Also, you will find out the pros and cons of auction websites.

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

  3. Jul 2021
  4. datatracker.ietf.org datatracker.ietf.org
    1. 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).
    1. 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:

      1. access a new scratch area (about:blank) for experimentation
      2. make it editable, or make any given element on a page editable
      3. 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).

    1. How We Delivered MVP for PlanMyKids - Kids Activities Marketplace (Case Study)Alina NechvolodE-Commerce & SaaS StrategistEugenia ChernukhaProject ManagerInessa IshchenkoUX/UI DesignerMarketplaceCase studyHomeBlogCodica WayHow We Delivered MVP for PlanMyKids - Kids Activities Marketplace (Case Study)Jul 15, 202118 min readIn today’s hectic life keeping children busy after school is a pressing issue for many parents. Not only should they find the most suitable activities for kids, but they also have to monitor the schedule on the go. Such activity booking marketplaces can become a silver bullet for both parents and service providers. Such platforms make it easier for both parties to plan, book, and coordinate these activities for children. Today we would like to share our experience in building a kids activities marketplace. We will lead you through the key stages of custom software product development in our company - from a discovery session to the product launch.

      Today we would like to share our experience in building a kids activities marketplace. We will lead you through the key stages of custom software product development in our company - from a discovery session to the product launch.

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

      https://web.archive.org/web/20170929175241/https://addons.cdn.mozilla.net/user-media/previews/full/157/157212.png?modified=1429612633

      https://web.archive.org/web/20170929175242/https://addons.cdn.mozilla.net/user-media/previews/full/157/157210.png?modified=1429612633

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

    1. What is Project Discovery Phase in Custom Software DevelopmentDmitry ChekalinChief Executive OfficerDaniil TorkutDeveloper AdvocateCustom SoftwareHomeBlogEntrepreneurshipWhat is Project Discovery Phase in Custom Software DevelopmentMar 30, 202012 min readSo, you came up with a new product idea. What’s next? For sure, you want to get a time and cost estimation from a software agency. However, most likely, they won’t be able to provide an accurate timeline and development costs after your request.The matter is that to provide an estimate, a development team needs more information than you think. Is there any solution in this situation? Sure, it is a project discovery phase.In this article, we will share a brief overview of a project discovery stage, and cover its goals, main tasks, and results for customers.

      So, you came up with a new product idea. What’s next? For sure, you want to get a time and cost estimation from a software agency. However, most likely, they won’t be able to provide an accurate timeline and development costs after your request.

      The matter is that to provide an estimate, a development team needs more information than you think. Is there any solution in this situation? Sure, it is a project discovery phase.

      In this article, we will share a brief overview of a project discovery stage, and cover its goals, main tasks, and results for customers.

    1. How Much Does It Cost to create a Website Like Amazon?Dmitry ChekalinChief Executive OfficerDaniil TorkutDeveloper AdvocateKate DavydovaMarketplace Growth StrategistMarketplaceProduct GuideHomeBlogEntrepreneurshipHow Much Does It Cost to create a Website Like Amazon?Dec 10, 201917 min readToday, the ability to make a purchase in 1 click means nothing extraordinary. Still, in 1999, it was a sensation. The sensation caused by Jeff Bezos and his website, Amazon, now loved by millions of buyers and suppliers. Six figures of digital transactions, product listings, and new users prove the platform's success and constant growth.In 2018, Amazon's stock value rose to make the marketplace worth $1 trillion. The store that was started in the garage has become the second company after Apple Inc.Wondering how to build a multi vendor marketplace like Amazon? In this article, we will cover the main points to take into account when creating a similar e-commerce platform.

      Today, we know Amazon as one of the Big Four tech companies along with Google, Apple, and Facebook.

      How did it hit the big time? This question intrigues both entrepreneurs who are going to launch a multi-vendor online marketplace and owners of existing platforms.

      In this post, we want to discuss the core technical aspects that deserve your attention when you are going to launch a similar website including the right tech stack, required functionality, and the key MVP features.

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

  5. Jun 2021
    1. 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.

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

    1. 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:
    1. This isn't about writing boilerplate setter properties for each field in the model, but rather about writing methods that encapsulate the point of interaction with the database layer. View code can still inspect any field on the model and perform logic based on that, but it should not modify that data directly. We're ensuring that there is a layer at which we can enforce application-level integrity constraints that exist on top of the integrity constraints that the database provides for us.

      Addresses the issue raise on this tweet. We are not writing getters and setters out of obligation or convention.

    1. The salary for each profession varies from similar factors. What determines the salary of software developers? After reading this article, I concluded that the greatest role is played by the country in which the developer works. For example, there are countries where developer salaries are much lower, although skills are not inferior. Skills, background and many other points also affect. Enjoy reading!

    1. There's no official Chrome or Chromium package for Linux don't install it this way because it's either outdated or unofficial, both are bad. Download it from official source.
    1. This is why for a recent Angular+Rails project we chose to use a testing stack from the backend technology’s ecosystem for e2e testing.
    2. Rather than write new tooling we decided to take advantage of tooling we had in place for our unit tests. Our unit tests already used FactoryBot, a test data generation library, for building up test datasets for a variety of test scenarios. Plus, we had already built up a nice suite of helpers that we coud re-use. By using tools and libraries already a part of the backend technology’s ecosystem we were able to spend less time building additional tooling. We had less code to maintain because of this and more time to work on solving our customer’s pain points.
    3. The problem domain and the data involved in this project was complicated enough. We decided that not having to worry about unknowns with the frontend end-to-end testing stack helped mitigate risk. This isn’t to say you should always going with the tool you know, but in this instance we felt it was the right choice.
    4. This particular project team came in with a lot of experience using testing tools like RSpec and Capybara. This included integrating with additional tools like Selenium WebDriver, Chrome and Chromedriver, data generation libraries like FactoryBot, and task runners like Rake. We had less experience doing end-to-end testing with Protractor even though it too uses Selenium WebDriver (a tool we’re very comfortable with).
    5. There are times to stretch individually and as a team, but there are also times to take advantage of what you already know.
    6. We chose to define the frontend in one technology stack (Angular+TypeScript/JavaScript) and the backend in another (Ruby+Ruby on Rails), but both came together to fulfill a singular product vision.
    1. Or if you're looking for a core extension that adds this to the Array class, I'd recommend the facets gem (require 'facets/array/average'). Then you can just do array.average. And, from looking at the source, it turns out they do the exact same thing as the instance_eval approach above. The only difference is that it's implemented as a method—which of course already has self pointing to itself—instead of a block): def average; return nil if empty?; reduce(:+) / length.to_f; end Main advantage of this is that it's even more concise/readable and it handles the empty? case.
    1. Users who have installed it decided to trust me, and I'm not comfortable transferring that trust to someone else on their behalf. However, if you'd like to fork it, feel free.

      Interesting decision... Seems like the project could have been handed off to new maintainers instead of just a dead-end abandoned project and little chance of anyone using it for new projects now.

      Sure you can fork it, but without a clear indication of which of the many forks in the network graph to trust, I doubt few will take the (massively) extra time to evaluate all options and choose an existing fork as a "leader" (or create their own fork) to go with continuing maintenance...

  6. May 2021
    1. This function runs on every request, for both pages and endpoints, and determines the response. It receives the request object and a function called resolve, which invokes SvelteKit's router and generates a response accordingly.
    1. that involves looking up where to find Guix's source code, `git clone`ing it, finding the Guix revision I'm currently on with `guix describe` so I can check out the same one for consistency's sake, `make`ing it, `guix environment guix`, using `pre-inst-env`, etc

      This is a direct response to the question, so it makes sense to write it out, but Spitz's piece (linked earlier) Open source is not enough describes the problem adequately.

  7. Apr 2021
    1. Lumberjack 1.0 had a concept of a unit of work id that could be used to tie log messages together. This has been replaced by tags. There is still an implementation of Lumberjack.unit_of_work, but it is just a wrapper on the tag implementation.
    1. Coordination: More environments require more coordination. Teams need to track which feature is deployed to which environment. Bugs need to be associated with environments. Every environment represents a particular ‘state’ of the codebase, and this has to be tracked somewhere to make sure that customers & stakeholders are seeing the right things;

      Try to remember the last time you heard one of the following phrases:

      • "Oh, I deployed it in the X environment"
      • "It was working in the stage environment"
    1. I also sell Sidekiq Pro and Sidekiq Enterprise, extensions to Sidekiq which provide more features, a commercial-friendly license and allow you to support high quality open source development all at the same time.
    1. I don't know why but they just removed some featuresAt first, you can't play this with your friend online except waiting for random matchingYou can't invite your friends to your closed room and play togheter
    1. Screen and Tmux are used to add a session context to a pseudoterminal, making for a much more robust and versatile solution. For example, each provides terminal persistence, allowing a user to disconnect from one computer and then connect later from another computer.
    1. I should note that the issue with deletions being skipped has been fixed (the file-has-vanished errors were changed into warnings).
    1. Clubhouse has really made a fuss around the digital world. It’s hard to imagine a person who hasn’t heard about this app, celebrities who joined it, or pranksters who already managed to confuse the audience. Taking into account the skyrocketing popularity, “how to make an app like Clubhouse” has become an urgent question in the software development business. 
    1. # +devise_for+ is meant to play nicely with other routes methods. For example, # by calling +devise_for+ inside a namespace, it automatically nests your devise # controllers: # # namespace :publisher do # devise_for :account # end
    1. How to build a website like Upwork

      The recent data by Website Planet indicates that the number of US freelancers will grow to 67.6 million specialists by the end of 2021. The number of freelance marketplaces is growing as well since 73% of freelancers search for jobs at dedicated websites.

      The first freelance website that comes to our mind is Upwork, isn't it?) If you wonder how to build a website like Upwork, stay tuned.

    1. Custom Software Development for Startups: 6 Tips to Save Costs

      Building a software product from scratch may seem costly for a startup on a small budget.

      In reality, expenses vary significantly depending on the solution, experience, and your partner's team.

      Check the key findings to bring down the cost of software development.

  8. Mar 2021
    1. Or is this a call for mainstream operating systems and applications to get creative (read, nice tiling or splitting by default)?What if all browsers suported single page split view? So that the left side was your regular view, half width, and the right side was the continuation of the same page, where the left side ended.
    1. Use cases, user stories, functional requirements, and visual analysis models are popular choices for requirements specification.
    1. This is not a fork. This is a repository of scripts to automatically build Microsoft's vscode repository into freely-licensed binaries with a community-driven default configuration.

      almost without a doubt, inspired by: chromium vs. chrome

    1. Sorry you’re surprised. Issues are filed at about a rate of 1 per day against GLib. Merge requests at a rate of about 1 per 2 days. Each issue or merge request takes a minimum of about 30 minutes (across at least 2 people) to analyse, put together a fix, test it, review it, fix it, review it and merge it. I’d estimate the average is closer to 3 hours than 30 minutes. Even at the fastest rate, it would take 3 working months to clear the backlog of ~1000 issues. I get a small proportion of my working time to spend on GLib (not full time).
    2. Age of a ticket is completely irrelevant as anyone can request anything but the number of developers is limited. If you'd like to see something implemented, please consider providing a patch. Thanks!
    3. Sorry if I sounded rude. I am using Gnome on a daily basis and am highly appreciating all the work anyone has put into it. I was just surprised when I found an AskUbuntu post from 2010 linking to this bug.
    4. Wow 14 years. I still keep stumbling over this issue...
    1. In the real world, we are faced with the completely unfair constraint of being human while writing programs and while debugging them, and none of these costs can ever be reduced to zero.
    2. Nothing about the Unix Philosophy explicitly relates to a culture of software sharing. However, it should be no mystery that it comes from the software community where we argue at length about the best way to make our programs properly Free. Software that is developed according to these principles is easier to share, reuse, repurpose, and maintain.
    1. One thing that would be useful to this debate an analysis of a language ecosystem where there are only "macropackages" and see if the same function shows up over and over again across packages.
    1. JavaScript needs to fly from its comfy nest, and learn to survive on its own, on equal terms with other languages and run-times. It’s time to grow up, kid.
    2. If JavaScript were detached from the client and server platforms, the pressure of being a monoculture would be lifted — the next iteration of the JavaScript language or run-time would no longer have to please every developer in the world, but instead could focus on pleasing a much smaller audience of developers who love JavaScript and thrive with it, while enabling others to move to alternative languages or run-times.
    3. While various shortcomings of the standard run-time library are the obvious, immediate reason for the creation of micro-packages
    4. As to opinions about the shortcomings of the language itself, or the standard run-times, it’s important to realize that every developer has a different background, different experience, different needs, temperament, values, and a slew of other cultural motivations and concerns — individual opinions will always be largely personal and, to some degree, non-technical in nature.
    1. Refactoring is a means of addressing the problem of software rot. It is described as the process of rewriting existing code to improve its structure without affecting its external behaviour.
    2. Suppose an administrator creates a forum using open source forum software, and then heavily modifies it by adding new features and options. This process requires extensive modifications to existing code and deviation from the original functionality of that software.
    3. cannot be run on any modern day computer or computer simulator, as it was developed during the days when LISP and PLANNER were still in development stage, and thus uses non-standard macros and software libraries which do not exist anymore
    4. Software that is not currently being used gradually becomes unusable as the remainder of the application changes.
    5. much software requires continuous changes to meet new requirements and correct bugs, and re-engineering software each time a change is made is rarely practical.
    6. This creates what is essentially an evolution process for the program, causing it to depart from the original engineered design. As a consequence of this and a changing environment, assumptions made by the original designers may be invalidated, introducing bugs.
    7. will eventually lead to software becoming faulty, unusable, or in need of upgrade.
    1. Digital technology may contain no moving parts but it still, somehow, gets worn, splintered and corroded. It rots. It decays. The rot, though, is mostly invisible (and un-smellable). Still, one day, the thing is broken.
    1. For the $$$ question, nothing comes to mind. These problems i'm hitting up against are larger than a contractor could solve in a few hours of work (which would be hundreds/thousands of dollars).
    2. Yeah, can we pay money to make this go faster? Serious question.
    3. Progress is slow though. I want to change how assets are loaded, the current implementation of "pipelines" is challenging to work with.
    1. But we're definitely sticking with the source map idea rather than the current (Rails 3/4) behavior of including all JS and CSS files separately while in development?
    2. Still broken, @cannikin. Nobody's on board to investigate, much less fix it. Please do dig in
    1. Think JavaScript is your only option for the front-end? Think again. Hyperstack is a Ruby DSL, compiled by Opal, bundled by Webpack, powered by React.
    1. Want to know how to build a taxi app that will become the next Uber or Carb? It is a reasonable question considering how convenient and cost-effective it is to use a taxi instead of maintaining your own vehicle. The best way for a cab company to ensure this convenience for customers is to build a taxi booking app.
    1. You could also use the NodeIterator API, but TreeWalker is faster
    2. All those 'modern' and 'super-modern' querySelectorAll("*") need to process all nodes and do string comparisons on every node.
    3. the fastest solution because the main workload is done by the Browser Engine NOT the JavaScript Engine
    1. Posting an issue on the discussion boards for a three year old game, yesterday, I wasn't holding my breath for a reply. Earlier, this morning, a dev. responded, stating they'd look at fixing it, and it was just a few hours before it were sorted!
    1. Everyone knows friction in software is harmful. But I think we all continually underestimate just how big an influence friction is on what people actually do and use. People don’t write long multi-tweet threads because it’s a good way to post a short essay, they do it because it’s so low friction.

      Friction within software can be a very good thing.

    1. Async is a digital transformation studio that scales teams and their technical experience.

      Test Annotation

    Tags

    Annotators

    URL

    1. Uber::Option implements the pattern of taking an option, such as a proc, instance method name, or static value, and evaluate it at runtime without knowing the option's implementation.
    1. MIT License. Copyright 2020 Rafael França, Carlos Antônio da Silva. Copyright 2009-2019 Plataformatec.
  9. Feb 2021
    1. How do you know if source maps are working correctly? Try adding a syntax error to one of your assets and use the console to debug. Does it show the correct file and source location? Or does it reference the top level application.js file?
    1. Our mission is to allow people to make money via educational efforts and to dedicate the rest of their time to creating great open source products.

      What does this mean exactly? "Our mission is to allow people to make money via educational efforts"

    1. provide interfaces so you don’t have to think about them

      Question to myself: Is not having to think about it actually a good goal to have? Is it at odds with making intentional/well-considered decisions?  Obviously there are still many of interesting decisions to make even when using a framework that provides conventions and standardization and makes some decisions for you...

    2. Trailblazer is an architectural pattern that comes with Ruby libraries to implement that pattern.
    3. Whether this is the life-cycle of a <user> entity or just a sign-up function, it has to be defined and coded somewhere.
    1. I started Trailblazer GmbH 4 years ago with my relocation from Australia back to Europe. One of our consulting clients is the central police department of a German state that has kept me busy for more than three years now.
    2. We’re now relaunching PRO, but instead of a paid chat and (never existing) paid documentation, your team gets access to paid gems, our visual editor for workflows, and a commercial license.
    3. And yes, at TRB GmbH, we do pay people to work on OSS
    4. To tell you the truth, the new tracing feature was the original reason why I decided to write 2.1 and make you sit and wait in agony for years. Nevertheless, tracing is simply blowing my mind. I can’t count how many hours and angering rushs of adrenaline I’ve saved since the introduction of the wtf? method and its helpful higher-level stack trace.
    5. There is nothing wrong with building your own “service layer”, and many companies have left the Traiblazer track in the past years due to problems they had and that we think we now fixed.
    1. Software architecture is about making fundamental structural choices that are costly to change once implemented.
    2. Software architecture refers to the fundamental structures of a software system
    3. Software architecture choices include specific structural options from possibilities in the design of the software.
    1. A free cultural work (free content) is, according to the definition of Free Cultural Works, one that has no significant legal restriction on people's freedom to:
    1. note that TRB source code modifications are not proprietary

      In other words, you can build on this software in your proprietary software but can't change the Trailblazer source unless you're willing to contribute it back.

      loophole: I wonder if this will actually just push people to move their code -- which at the core is/would be a direction modification to the source code - out to a separate module. That's so easy to do with Ruby, so this restriction hardly seems like it would have any effect on encouraging contributions.

    2. Why is TRB licensed under LGPL, not MIT?
    3. The LGPL allows users to use and integrate LGPL software components into their own software without being required to release the source code of their own software components. However, if users modify LGPL software components (“derivative work”), they are required to make the modified software component available under the same LGPL license. To avoid the latter with TRB, users have to comply with para. 5 LGPLv2.1: A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a “work that uses the Library”. Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. In other words: if you use the TRB libraries in your commercial applications or Open-Source projects, you’re not creating a derivative work of Trailblazer. Your software can be distributed under any terms.
    4. Trailblazer (TRB) is an Open-Source project. Since we want to keep it that way, we decided to raise awareness for the “cost” of our work - providing new versions and features is incredibly time-consuming for us, but we love what we do.
    5. This creates a win-win situation, you as the user have your peace of mind, and we can continue working with your funds.
    1. Trailblazer extends the conventional MVC stack in Rails. Keep in mind that adding layers doesn't necessarily mean adding more code and complexity. The opposite is the case: Controller, view and model become lean endpoints for HTTP, rendering and persistence. Redundant code gets eliminated by putting very little application code into the right layer.
    2. Trailblazer offers you a new, more intuitive file layout in applications.
    3. Instead of grouping by technology, classes and views are structured by concept, and then by technology. A concept can relate to a model, or can be a completely abstract concern such as invoicing.
    4. While Trailblazer offers you abstraction layers for all aspects of Ruby On Rails, it does not missionize you. Wherever you want, you may fall back to the "Rails Way" with fat models, monolithic controllers, global helpers, etc. This is not a bad thing, but allows you to step-wise introduce Trailblazer's encapsulation in your app without having to rewrite it.
    1. ActiveInteraction plays nicely with Rails. You can use interactions to handle your business logic instead of models or controllers.
    2. Why is all this interaction code better? Two reasons: One, you can reuse the FindAccount interaction in other places, like your API controller or a Resque task. And two, if you want to change how accounts are found, you only have to change one place.

      Pretty weak arguments though...

      1. We could just as easily used a plain object or module to extract this for easy reuse and having it in only one place (avoiding duplication).