983 Matching Annotations
  1. Last 7 days
    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).

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

  3. 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. Top 7 Compelling Reasons to Hire Ukrainian Developers

      Many people consider offshore development. They seek quality for a lower cost and look where to hire developers. Customers search online, read reviews, or ask for referrals to find the software development team that best fits their goals. Ukraine has become one of the top locations where customers across Europe, Asia, and North America go for developers to build their products from scratch.This article highlights the most relevant reasons that foreign customers should consider hiring an ukrainian software developers.

    1. Hire Django Developers: Freelancers vs Agencies

      If you’re a business owner looking to hire Django developers remotely and aren’t sure which to choose — freelancers or a software development company — you’re in the right place. In this article, we’ll discuss how to find and hire Django developers and how to differentiate a great developer from the rest

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

  4. 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. How to Build an Online Marketplace

      The rising number of modern online marketplaces cause rapid development of sharing economy. How to catch the hype and build a marketplace that will conquer the world? Find the answers in our article. We hope this guide will help you better understand the building blocks of marketplaces. If you have any questions on how to create an online marketplace or want to work with us, feel free to message our team.

    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.

    1. Offshore development is the proven way for people looking to bestow their businesses with perfect technology to maintain their potency and competitive edge in the market. From leveraging top talents and speeding up the development process to utilizing the latest technology stacks and minimizing the budget, outsourcing software development brings all these options for startups and enterprises in 2021.
    1. It is never just the developers or coding that makes an app successful. The fact is – there are piles of factors contributing to the success of a mobile app; Like the business idea, look and feel of the app, user journeys, efficient algorithms, architecture solutions, adequate risk management, security, and so on.
  5. 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. Do You Need To Build a Custom Real Estate CRM?

      What’s the best CRM for real estate? That’s the million-dollar question, isn’t it? TopProducer, BoomTown!, Contactually, Wise Agent, Realty Commander ― there are tons of great real estate CRMs, and it’s impossible to say which system is best. Every system is great, but they all may be missing something you want. Choosing the right CRM is one of the most important decisions impacting the evolution and growth of your business.Should you go with custom real estate CRM software or use a ready-made solution? We’re here to help you find out.

    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.

  6. Mar 2021
    1. Building an EHR system: Definition, Benefits, Problems, and Examples

      Are you spending more time finding patient information in a variety of disconnected systems than you are actually seeing your patients? In the end, does everything still boil down to a note nobody can ever read because it’s handwritten by a doctor? Oh, the dreaded paper medical records. They aren’t just difficult to read and analyze.If you twant to khow moreabout to build an EHR system, you’re in the right place. In this post, we talk about how doctors feel about electronic health records and what it takes to create a successful EHR system. We also lay out the differences between EHRs, EMRs, and PHRs, show examples of the best EHRs, and go deep into key features of an EHR system

    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.