660 Matching Annotations
  1. Last 7 days
  2. Mar 2020
    1. This article not only focuses on learning but development of leaders. The author explores the importance of leadership development in order to meet the needs of the organization and those of the stakeholders who support or might need something from the organization.

    1. Integrating Technology in the Adult Education Classroom

      This website offers an online course regarding the purposes, guidelines, and implementation of integrating technology into adult learning environments. Additionally, the course offers examples of ways to integrate that technology. Rank: 7/10

    1. ISTE Standards Transform learning and teaching.  

      This section of the ISTE website offers paid resources that educators can access to improve their own understanding of the ISTE standards as well as practical ways to implement those standards in their classroom integration of technology. Rating: 6/10

    1. Let's replicate our inefficientSquare example, but this time we'll use our memoizer to cache results.

      Replication of a function with the use of memoizer (check the code below this annotation)

    2. The biggest problem with JSON.stringify is that it doesn't serialize certain inputs, like functions and Symbols (and anything you wouldn't find in JSON).

      Problem with JSON.stringify.

      This is why the previous code shouldn't be used in production

    3. Let's reason through our memoizer before we write any code.

      Operations performed by a memoizer:

      • Takes a reference to a function as an input
      • Returns a function (so it can be used as it normally would be)
      • Creates a cache of some sort to hold the results of previous function calls
      • Any future time calling the function, returns a cached result if it exists
      • If the cached value doesn't exist, calls the function and store that result in the cache

      Which is written as:

      // Takes a reference to a function
      const memoize = func => {
        // Creates a cache of results
        const results = {};
        // Returns a function
        return (...args) => {
          // Create a key for results cache
          const argsKey = JSON.stringify(args);
          // Only execute func if no cached value
          if (!results[argsKey]) {
            // Store function call result in cache
            results[argsKey] = func(...args);
          }
          // Return cached value
          return results[argsKey];
        };
      };
      
    4. Memoization is an optimization technique used in many programming languages to reduce the number of redundant, expensive function calls. This is done by caching the return value of a function based on its inputs.

      Memoization (simple definition)

    1. How Much Does it Cost to Build a Website in 2020?

      The cost for the frontend & backend development will depend on the complexity of your project. What configurations you include, complex queries, animations present on your website, language you select and more.

    1. How to Protect Your App Idea

      Have you ever had an excellent idea for a mobile app, but worry about what would happen if your idea was stolen by a competitor? Start safeguarding your idea by following these guidelines.

    1. Killing the Conversion Killers: Insights from A/B Testing

      A/B testing is a very beneficial approach for startups that are entering the digital space for the first time. All the silly, simple mistakes that can cause huge losses to your eCommerce site will be eliminated through these tests.

    1. Top 30 Types of Business Models That You Can Adopt For Startup

      A business model is a way an organization makes value and money. All the processes and business policies come under the business model. It is not just about making money but even about how to make a partnership or how to treat employees and much.

    1. Use uppercase only in constants.

      Uppercase for constants

      export const API_KEY = 'SOMEKEY';
      
    2. Use PascalCase only when naming constructors or classes.

      PascalCase for constructors and classes

      // good
      class User {
        constructor(options) {
          this.name = options.name;
        }
      }
      
      const good = new User({
        name: 'yup',
      });
      
    3. Use camelCase when naming objects, functions, and instances.

      camelCase for objects, functions and instances

      const thisIsMyFuction() {}
      
    1. Don’t go to code academy, go to design academy. Be advocates of the user & consumer. It’s not about learning how to code, it’s about translating real-world needs to technological specifications in just ways that give end users agency and equity in design, development and delivery. Be a champion of user-centric design. Learn how to steward data and offer your help.
    1. How Much Will it Cost to Make an IoT App?

      IoT devices are spreading in the market rapidly which has accelerated IoT app development. Moreover, if you are having an IoT app idea, then knowing the estimated cost will aid you in planning the development accordingly.

    1. Benefits of Hybrid App Development With the Ionic Framework

      Hybrid mobile app development with Ionic guarantees that you have the speed of web advancement alongside the customized client experience that comes through local portable application improvement.

    1. App Store vs Play Store : Where to Launch The App First?

      As we know Android holds a huge market share while iOS is known for its security and customer spending. If you want to target a massive global audience, then Android can be a choice. On the other hand, if your app is about enterprise or eCommerce, iOS is a better choice.

    1. They switch to get features like good doc lookup, good syntax highlighting, integration with unit tests, and (critically!) the ability to produce final, distributable source code files, as opposed to notebooks or REPL histories

      Things missed in Jupyter Notebooks:

      • good doc lookup
      • good syntax highlighting
      • integration with unit tests
      • ability to produce final, distributable source code files
    2. Development Pros Cons

      Table comparing pros and cons of:

      • IDE/Editor
      • REPL/shell
      • Traditional notebooks (like Jupyter)
    3. Exploratory programming is based on the observation that most of us spend most of our time as coders exploring and experimenting

      In exploratory programming, we:

      • experiment with a new API to understand how it works
      • explore the behavior of an algorithm that we're developing
      • debug our code through combination of inputs
    4. This kind of “exploring” is easiest when you develop on the prompt (or REPL), or using a notebook-oriented development system like Jupyter Notebooks

      It's easier to explore the code:

      • when you develop on the prompt (or REPL)
      • in notebook-oriented system like Jupyter

      but, it's not efficient to develop in them

    5. notebook contains an actual running Python interpreter instance that you’re fully in control of. So Jupyter can provide auto-completions, parameter lists, and context-sensitive documentation based on the actual state of your code

      Notebook makes it easier to handle dynamic Python features

    1. Creating meticulous tests before exploring the data is a big mistake, and will result in a well-crafted garbage-in, garbage-out pipeline. We need an environment flexible enough to encourage experiments, especially in the initial place.

      Overzealous nature of TDD may discourage from explorable data science

    2. I recommend Airbnb style JavaScript style guide and Airbnb TypeScript)

      Recommended style guides from Airbnb for:

    3. TSDoc is a way of writing TypeScript comments where they’re linked to a particular function, class or method (like Python docstrings).

      TSDoc <--- TypeScript comment syntax. You can create documentation with TypeDoc

    4. I need to specify types of input and output. But then I get speedup due to autocompletion, hints, and linting if for any reason I make a mistake.

      In TypeScript, you spend a bit more time in the variable definition, but then autocompletion, hints, and linting will reward you. It also boosts code readability

    5. I found that the overhead to use types in TypeScript is minimal (if any).

      In TypeScript, unlike in JS we need to specify the types:

    6. Write a new test and the result. If you want to make it REPL-like, instead of writing console.log(x.toString()) use expect(x.toString()).toBe('') and you will directly get the result.

      jest <--- interactive JavaScript (TypeScript and others too) testing framework. You can use it as a VS Code extension.

      Basically, instead of console.log(x.toString()), you can use except(x.toString()).toBe(''). Check this gif to understand it further

    7. ESLint does automatic code linting

      ESLint <--- pluggable JS linter:

      • mark things that are incorrect,
      • mark things that are unnecessary or risky (e.g. if (x = 5) { ... })
      • set a standard way of writing code
    8. I would use ESLint in full strength, tests for some (especially end-to-end, to make sure a commit does not make project crash), and add continuous integration.

      Advantage of tests

    9. A few takeaways

      Summarising the article:

      • Types and tests save you from stupid mistakes; thesea re gifts for your future self!
      • Use ESLint and configure it to be your strict, but fair, friend.
      • Think of tests as a permanent console.
      • Types: It is not only about checks. It is also about code readability.
      • Testing with each commit makes fewer surprises when merging Pull Requests.
    10. With Codecov it is easy to make jest & Travis CI generate one more thing:

      Codecov lets you generate a score on your tests:

    11. I set it with a few clicks at Travis CI, and by creating a .travis.yml file in the repo

      You can set CI with a few clicks using Travis CI and creating a .travis.yml file in your repo:

      language: node_js
      node_js: node
      
      before_script:
        - npm install -g typescript
        - npm install codecov -g
      
      script:
        - yarn lint
        - yarn build
        - yarn test
        - yarn build-docs
      
      after_success:
        - codecov
      
    12. Continuous integration makes it easy to check against cases when the code: does not work (but someone didn’t test it and pushed haphazardly), does work only locally, as it is based on local installations, does work only locally, as not all files were committed.

      CI - Continuous Integration helps to check the code when it :

      • does not work (but someone didn’t test it and pushed haphazardly),
      • does work only locally, as it is based on local installations,
      • does work only locally, as not all files were committed.
    13. It is fine to start adding tests gradually, by adding a few tests to things that are the most difficult (ones you need to keep fingers crossed so they work) or most critical (simple but with many other dependent components).

      Start small by adding tests to the most crucial parts

    14. Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.

      According to the Kernighan's Law, writing code is not as hard as debugging

    15. I set it with a few clicks at Travis CI, and by creating a .travis.yml file in the repo

      You can set CI with a few clicks using Travis CI and creating a .travis.yml file in your repo:

      language: node_js
      node_js: node
      
      before_script:
        - npm install -g typescript
        - npm install codecov -g
      
      script:
        - yarn lint
        - yarn build
        - yarn test
        - yarn build-docs
      
      after_success:
        - codecov
      
    16. interactive notebooks fall short when you want to write bigger, maintainable code

      Survey regarding programming notebooks:

    1. Continuous Delivery for Machine Learning (CD4ML) is a software engineering approach in which a cross-functional team produces machine learning applications based on code, data, and models in small and safe increments that can be reproduced and reliably released at any time, in short adaptation cycles.

      Continuous Delivery for Machine Learning (CD4ML) (long definition)

      Basic principles:

      • software engineering approach
      • cross-functional team
      • producing software based on code, data, and ml models
      • small and safe increments
      • reproducible and reliable software release
      • short adaptation cycles
    2. A deployment pipeline automates the process for getting software from version control into production, including all the stages, approvals, testing, and deployment to different environments

      Deployment pipeline

    3. example of how to combine different test pyramids for data, model, and code in CD4ML

      Combining tests for data (purple), model (green) and code (blue) testing

    4. Another approach is to use a tool like H2O to export the model as a POJO in a JAR Java library, which you can then add as a dependency in your application. The benefit of this approach is that you can train the models in a language familiar to Data Scientists, such as Python or R, and export the model as a compiled binary that runs in a different target environment (JVM), which can be faster at inference time

      H2O - export models trained in Python/R as a POJO in JAR

    5. In order to formalise the model training process in code, we used an open source tool called DVC (Data Science Version Control). It provides similar semantics to Git, but also solves a few ML-specific problems:

      DVC - transform model training process into code.

      Advantages:

      • it has multiple backend plugins to fetch and store large files on an external storage outside of the source control repository;
      • it can keep track of those files' versions, allowing us to retrain our models when the data changes;
      • it keeps track of the dependency graph and commands used to execute the ML pipeline, allowing the process to be reproduced in other environments;
      • it can integrate with Git branches to allow multiple experiments to co-exist
    6. Continuous Delivery for Machine Learning (CD4ML) is the discipline of bringing Continuous Delivery principles and practices to Machine Learning applications.

      Continuous Delivery for Machine Learning (CD4ML)

    7. common functional silos in large organizations can create barriers, stifling the ability to automate the end-to-end process of deploying ML applications to production

      Common ML process (leading to delays and frictions) ML process

    8. There are different types of testing that can be introduced in the ML workflow.

      Automated tests for ML system:

      • validating data
      • validating component integration
      • validating the model quality
      • validating model bias and fairness
    9. Continuous Delivery for Machine Learning end-to-end process

      end-to-end process

    10. We chose to use GoCD as our Continuous Delivery tool, as it was built with the concept of pipelines as a first-class concern

      GoCD - open source Continuous Delivery tool

    11. Machine Learning pipeline for our Sales Forecasting problem, and the 3 steps to automate it with DVC

      Sales Forecasting process Sales Forecasting process

    1. From examining the type hinting, you can immediately tell that the function expects the input name to be of a type str, or string. You can also tell that the expected output of the function will be of a type str, or string, as well.

      Type hinting introduced in Python 3.5 extends 4 rules of Jeff Atwood and comments the code itself, such as this example:

      def hello_name(name: str) -> str:
          return(f"Hello {name}")
      
      • user knows that the code expects input of type str
      • the same about output
    2. class constructor parameters should be documented within the __init__ class method docstring

      init

    3. say_hello.__doc__ = "A simple function that says hello... Richie style"

      Example of using __doc:

      Code (version 1):

      def say_hello(name):
          print(f"Hello {name}, is it me you're looking for?")
      
      say_hello.__doc__ = "A simple function that says hello... Richie style"
      

      Code (alternative version):

      def say_hello(name):
          """A simple function that says hello... Richie style"""
          print(f"Hello {name}, is it me you're looking for?")
      

      Input:

      >>> help(say_hello)
      

      Returns:

      Help on function say_hello in module __main__:
      
      say_hello(name)
          A simple function that says hello... Richie style
      
    4. There are specific docstrings formats that can be used to help docstring parsers and users have a familiar and known format.

      Different docstring formats:

    5. Docstring conventions are described within PEP 257. Their purpose is to provide your users with a brief overview of the object.

      Docstring conventions

    6. Since everything in Python is an object, you can examine the directory of the object using the dir() command

      dir() function examines directory of Python objects. For example dir(str).

      Inside dir(str) you can find interesting property __doc__

    7. Daniele Procida gave a wonderful PyCon 2017 talk and subsequent blog post about documenting Python projects. He mentions that all projects should have the following four major sections to help you focus your work:

      Public and Open Source Python projects should have the docs folder, and inside of it:

      • Tutorials
      • How-To Guides
      • References
      • Explanations

      (check the table below for a summary)

    8. Class method docstrings should contain the following: A brief description of what the method is and what it’s used for Any arguments (both required and optional) that are passed including keyword arguments Label any arguments that are considered optional or have a default value Any side effects that occur when executing the method Any exceptions that are raised Any restrictions on when the method can be called

      Class method should contain:

      • brief description
      • arguments
      • label on default/optional arguments
      • side effects description
      • raised exceptions
      • restrictions on when the method can be called

      (check example below)

    9. In all cases, the docstrings should use the triple-double quote (""") string format.

      Think only about """ when using docstrings

    10. Along with docstrings, Python also has the built-in function help() that prints out the objects docstring to the console.

      help() function.

      After typing help(str) it will return all the info about str object

    11. If you use argparse, then you can omit parameter-specific documentation, assuming it’s correctly been documented within the help parameter of the argparser.parser.add_argument function. It is recommended to use the __doc__ for the description parameter within argparse.ArgumentParser’s constructor.

      argparse

    12. Docstrings can be further broken up into three major categories: Class Docstrings: Class and class methods Package and Module Docstrings: Package, modules, and functions Script Docstrings: Script and functions

      3 main categories of docstrings

    13. Documenting your Python code is all centered on docstrings. These are built-in strings that, when configured correctly, can help your users and yourself with your project’s documentation.

      Docstrings - built-in strings that help with documentation

    14. Scripts are considered to be single file executables run from the console. Docstrings for scripts are placed at the top of the file and should be documented well enough for users to be able to have a sufficient understanding of how to use the script.

      Docstrings in scripts

    15. All multi-lined docstrings have the following parts: A one-line summary line A blank line proceeding the summary Any further elaboration for the docstring Another blank line

      Multi-line docstring example:

      """This is the summary line
      
      This is the further elaboration of the docstring. Within this section,
      you can elaborate further on details as appropriate for the situation.
      Notice that the summary and the elaboration is separated by a blank new
      line.
      
      # Notice the blank line above. Code should continue on this line.
      
    16. The general layout of the project and its documentation should be as follows:
      project_root/
      │
      ├── project/  # Project source code
      ├── docs/
      ├── README
      ├── HOW_TO_CONTRIBUTE
      ├── CODE_OF_CONDUCT
      ├── examples.py
      

      (private, shared or open sourced)

    17. Documenting your code, especially large projects, can be daunting. Thankfully there are some tools out and references to get you started

      You can always facilitate documentation with tools.

      (check the table below)

    18. Sometimes, the best way to learn is to mimic others. Here are some great examples of projects that use documentation well:

      Examples of projects that use documentation well

      (chech the list below)

    19. Along with these tools, there are some additional tutorials, videos, and articles that can be useful when you are documenting your project

      Recommended videos to start documenting

      (check the list below)

    1. Since we have much faster CPUs now, numerical calculations are done in Python which is much slower than Fortran. So numerical calculations basically take the same amount of time as they did 20 years ago.

      Python vs Fortran ;)

  3. Feb 2020
    1. I am not sure how but one kind soul somehow found the project, forked it, refactored it, "modernized" it, added linting, code sniffing, added CI and opened the pull request.

      It's worth sharing your code, since someone can always find it and improve it, so that you can learn from it

    2. It is solved when you understand why it occurred and why it no longer does.

      What does it mean for a problem to be solved?

    1. This ‘evolutionary theory of socialisation’ proposes that children who experience family stresses, including father absence,should experience early puberty, ‘precocious’sexuality and anxiety (in women) or aggression (men),as such a strategy resultsin higher reproductive success in a stressful adult environment where paternal investment was likely to be low, and interpersonal relationships unreliable.

      So would it be reasonable to say that the apparent "dysfunction" is really a mismatch between their childhood environment and adult environment?

    1. PoC Vs. Prototype Vs. Minimum Viable Product: What’s The Difference?

      Proof of Concept (PoC), Prototype, and MVP (Minimum Viable Product) are three very unique concepts in the app development that several new business persons seem to get confused around.

    1. So Leftley tried again, changing both the product and the way he reached potential customers—offering them free insurance through their mobile phones. People could sign up without paying any premiums; they simply had to buy a certain number of extra minutes. They could keep earning this insurance by renewing the purchase each month. When a customer buys the required minutes, the telecom company pays his or her premium to both MicroEnsure and the partner insurer. Over time customers are offered additional insurance products, such as “double cover” (for a spouse) and “family cover,” which cost extra—from three cents to $1 per month, with payment collected through their phones. Revenue from the supplemental plans is split among MicroEnsure, the partner insurer, and the phone company.

      Leverage the growing connectivity in Africa --> rapidly growing population asking for phone and internet

    2. Founded in 2002, MicroEnsure has registered more than 56 million people in emerging economies for insurance (adding 18 million in 2017 alone), paying out $30 million in claims and radically innovating the insurance business model. It has introduced new forms of protection for customers, including microhealth, political-violence, crop, and mobile insurance.

      Bringing already-developed solutions adapted to local context in development.

    1. Top 5 Educational App Ideas to Look in 2020

      Students are now more equipped with mobile phones. Hence, to make them engaged in learning it is the best idea to develop mobile apps for school. Get in touch with us, to bring your educational app idea to reality.

    1. How Much Does It Cost to Build an Online Marketplace? [Full Estimate]

      For anyone who wants to know the cost of building a marketplace website, this guide shows the price feature-by-feature and the total cost across different regions.

    1. DevOps has taught us that the software development process can be generalized and reused for dealing with change not just in application code but also in infrastructure, docs and tests. It can all just be code.
    2. As developers we love our own local setup. We spend a lot of time and effort on making sure our favorite code editor and command line shell is as we want it to be, everything else is subpar, a hindrance to our productivity. The local environment is king. It’s where we should be coding our load test scripts and from where we should initiate our load tests.
    1. Top 5 Healthcare Marketing Strategy To Hit Your Targeted Audience

      With an innovative and user-friendly healthcare mobile app or website, there is a need to give relevant information to your users. You can provide the trending information to your users with the help of the blog. This can help you attract more users to your site.

    1. Devstringx Technologies opened for business in 2014. Today, Devstringx is India’s most recommended IT company for software product development, mobile app development and independent software testing services which headquarter in Noida, India.

      Website and software development square measure the basics part of running a profitable business. In current promoting, the necessity of custom software is rise day by day. Devstringx technologies one in all the most effective custom software development company in Noida, India. Custom software may be used with none long-time investment. They are doing not need constant development to suit company necessities. You'll be able to expend the software at any time. There square measure multiple advantages of custom advantages development like- efficient, measurability, flexible, compatible, customized answer, security.

      Our experienced, energetic and dedicated team of custom software developers and that we provide complete it software services with budget suited to your pockets. Our consultants recognize alright the key parameter of your business and deliver the proper results on time. We provide additional complete software testing services like functional testing services, performance testing services, Api testing services, usability testing services, content testing services, agile testing services, regression testing services, compatibility testing services, automation testing services, web application testing services in India.

      We've a separate team for every field like software developers, software tester, web developer...! Our team invariably able to work and that they commit the leads to future commitment towards your company. We give higher priority to our client's satisfaction. We specialized in providing the most effective automation testing services in Noida, India.

  4. Jan 2020
    1. Your idea should stem from solving someone’s problem. Ideally, your own problem. It’s important that you choose an idea which interests you. Interest is key to fuelling motivation which is crucial when making a web app. It takes effort building web apps and it’s important you have fun during the process.
    1. Each format makes tradeoffs in encoding, flexibility, and expressiveness to best suit a specific use case.

      Each data format brings different tradeoffs:

      • A format optimized for size will use a binary encoding that won’t be human-readable.
      • A format optimized for extensibility will take longer to decode than a format designed for a narrow use case.
      • A format designed for flat data (like CSV) will struggle to represent nested data.
    1. Your project has no business value today unless it includes blockchain and AI, although a centralized and rule-based version would be much faster and more efficient.

      Comparing current project needs to those 20 years ago

    2. There is StackOverflow which simply didn’t exist back then. Asking a programming question involved talking to your colleagues.

      20 years ago StackOverflow wouldn't give you a hand

    3. Cross-platform development is now a standard because of wide variety of architectures like mobile devices, cloud servers, embedded IoT systems. It was almost exclusively PCs 20 years ago.
    4. IDEs and the programming languages are getting more and more distant from each other. 20 years ago an IDE was specifically developed for a single language, like Eclipse for Java, Visual Basic, Delphi for Pascal etc. Now, we have text editors like VS Code that can support any programming language with IDE like features.

      How IDEs "unified" in comparison to the last 20 years

    5. Language tooling is richer today. A programming language was usually a compiler and perhaps a debugger. Today, they usually come with the linter, source code formatter, template creators, self-update ability and a list of arguments that you can use in a debate against the competing language.

      How coding became much more supported in comparison to the last 20 years

    6. Being a software development team now involves all team members performing a mysterious ritual of standing up together for 15 minutes in the morning and drawing occult symbols with post-its.

      In comparison to 20 years ago ;)

    7. A package management ecosystem is essential for programming languages now. People simply don’t want to go through the hassle of finding, downloading and installing libraries anymore. 20 years ago we used to visit web sites, downloaded zip files, copied them to correct locations, added them to the paths in the build configuration and prayed that they worked.

      How library management changed in 20 years

    1. Audiences had strong reactions to the new disturbing themes the horror plays presented. One of the most prevalent themes staged at the Grand-Guignol was the demoralization and corruption of science. The "evil doctor" was a reoccurring trope in the horror shows performed.

      Development idea: Bring back the Grand Guignol, but have evil politicians instead.

    1. “No Code” systems are extremely good for putting together proofs-of-concept which can demonstrate the value of moving forward with development.

      Great point of "no code" trend

    2. With someone else’s platform, you often end up needing to construct elaborate work-arounds for missing functionality, or indeed cannot implement a required feature at all.

      You can quickly implement 80% of the solution in Salesforce using a mix of visual programming (basic rule setting and configuration), but later it's not so straightforward to add the missing 20%

    3. the developer doesn’t need to worry about allocating memory, or the character set encoding of the string, or a host of other things.

      Comparison of C (1972) and TypeScript (2012) code.

      (check the code above)

    4. First, you’ve spread the logic across a variety of different systems, so it becomes more difficult to reason about the application as a whole. Second, more importantly, the logic has been implemented as configuration as opposed to code. The logic is constrained by the ability of the applications which have been wired together, but it’s still there.

      Why "no code" trend is dangerous in some way (on the example of Zapier):

      1. You spread the logic across multiple systems.
      2. Logic is maintained in configuration rather than code.
    1. Comments to your code should be kept brief and focused. Avoid using long comments when possible. Additionally, you should use the following four essential rules as suggested by Jeff Atwood:

      Comments should be as concise as possible. Moreover, you should follow 4 rules of Jeff Atwood:

      1. Keep comments close to the code being described.
      2. Don't use complex formatting (such as tables).
      3. Don't comment obvious things.
      4. Design code in a way it comments itself.
    2. Commenting your code serves multiple purposes

      Multiple purposes of commenting:

      • planning and reviewing code - setting up a code template
      • code description
      • algorithmic description - for example, explaining the work of an algorithm or the reason of its choice
      • tagging - BUG, FIXME, TODO
    3. In general, commenting is describing your code to/for developers. The intended main audience is the maintainers and developers of the Python code. In conjunction with well-written code, comments help to guide the reader to better understand your code and its purpose and design

      Commenting code:

      • describing code to/for developers
      • help to guide the reader to better understand your code, its purpose/design
    4. Documenting code is describing its use and functionality to your users. While it may be helpful in the development process, the main intended audience is the users.

      Documenting code:

      • describing use to your users (main audience)
    5. According to PEP 8, comments should have a maximum length of 72 characters.

      If comment_size > 72 characters:

      use `multiple line comment`
      
    6. “Code is more often read than written.” — Guido van Rossum
    1. We are committed to local artists and our company of Resident Artists and theatre professionals are a driving force behind Artists Rep’s creative output and identity.

      TEST change text to read as follows:

    1. Best eCommerce Furniture Store Interface

      People these days prefer buying online rather than going to traditional stores. It was a bit tricky task but at last, we came with a furniture store app that has attractive designs as well as easy navigation.

    1. Top 9 Foolproof Designing Tips for iPhone X

      Tech giant Apple launches an iPhone every year but has never tried to influence its user experience with its design. But with the advent of the iPhone X, Apple has broken the mold of having a stereotypical screen.

    1. How Much Does Flutter App Development Cost?

      The growing popularity of the flutter has compelled popular companies to build their app in Flutter. To build the flawless app for your business, you can hire flutter developers after going through the per hour rate of the countries.

    1. Deck the halls with all your favorite gifts of 2020. It’s the holiday season, which means it’s time for presents. Gifts for your family and friends, gifts for your colleagues, gifts for yourself. December is the most business-friendly month for retail businesses and online eCommerce stores.

    1. There are numerous online cost calculators on the internet but no other calculator will give you an insight into the days & price for a particular feature. You will at the end of calculators get the nearest value of development price according to the features you require.

    1. Customers buy things from an online website that is innovative and have good pictures available for the product. And this is what we have experienced so far. Here we came up with an eCommerce app for Online Shoe Store. And this is what we designed for it.

    1. Implementing live chat and having the right team of experts handling the conversations is essential. And the best thing here is you don’t need to add a single penny in your cost of app development. You just need to add a plugin for including live chat.

    1. How Much Does It Cost To Make An App?

      A complete mobile app development passes through stages like strategy, design, development, testing, and maintenance. During the process, each stage adds its share to the app cost.

  5. Dec 2019
    1. There is created in the State treasury a special fund, which shall be held separate and apart from all other State moneys, to be known as the Cannabis Business Development Fund. The Cannabis Business Development Fund shall be exclusively used for the following purposes:        (1) to provide low-interest rate loans to Qualified      Social Equity Applicants to pay for ordinary and necessary expenses to start and operate a cannabis business establishment permitted by this Act;        (2) to provide grants to Qualified Social Equity     Applicants to pay for ordinary and necessary expenses to start and operate a cannabis business establishment permitted by this Act;        (3) to compensate the Department of Commerce and     Economic Opportunity for any costs related to the provision of low-interest loans and grants to Qualified Social Equity Applicants;         (4) to pay for outreach that may be provided or     targeted to attract and support Social Equity Applicants and Qualified Social Equity Applicants;        (5) (blank);         (6) to conduct any study or research concerning the     participation of minorities, women, veterans, or people with disabilities in the cannabis industry, including, without limitation, barriers to such individuals entering the industry as equity owners of cannabis business establishments;        (7) (blank); and        (8) to assist with job training and technical     assistance for residents in Disproportionately Impacted Areas.

      The Cannabis Business Development Fund is a unique aspect of Illinois' marijuana law establishing a fund to be exclusively used for providing low interest loans and grants for qualified social equity applicants designed to help them start and operate a business.

      Funds will also go towards advertisement to attract applicants, conduct research on participation numbers and assistance with job training.

      The fund will hold money collected from early approval licenses issued before January 2021 and from license transfers from qualified social equity applicants.

      An additional $12 million dollars is in the fund from medicinal pilot program.

      The funds can not be transferred from the fund, according to the law.

    2.  Sec. 7-25. Transfer of license awarded to Qualified Social Equity Applicant.     (a) In the event a Qualified Social Equity Applicant seeks to transfer, sell, or grant a cannabis business establishment license within 5 years after it was issued to a person or entity that does not qualify as a Social Equity Applicant, the transfer agreement shall require the new license holder to pay the Cannabis Business Development Fund an amount equal to:         (1) any fees that were waived by any State agency     based on the applicant's status as a Social Equity Applicant, if applicable;        (2) any outstanding amount owed by the Qualified     Social Equity Applicant for a loan through the Cannabis Business Development Fund, if applicable; and        (3) the full amount of any grants that the Qualified     Social Equity Applicant received from the Department of Commerce and Economic Opportunity, if applicable.     (b) Transfers of cannabis business establishment licenses awarded to a Social Equity Applicant are subject to all other provisions of this Act, the Compassionate Use of Medical Cannabis Program Act, and rules regarding transfers. (Source: P.A. 101-27, eff. 6-25-19; 101-593, eff. 12-4-19.)

      All fees waived for qualified social equity applicants must be paid back before the license can be transferred to a new license holder. That money would go towards the Cannabis Business Development Fund.

    1. On-Demand Plant Delivery Website Design

      Here's how our On-Demand app designers made aesthetically appealing website design. Do you have any out of the box idea for an on-demand app? we'll help you design the perfect UI/UX for your dream project.

    1. Continuous Delivery of Deployment is about running as thorough checks as you can to catch issues on your code. Completeness of the checks is the most important factor. It is usually measured in terms code coverage or functional coverage of your tests. Catching errors early on prevents broken code to get deployed to any environment and saves the precious time of your test team.

      Continuous Delivery of Deployment (quick summary)

    2. Continuous Integration is a trade off between speed of feedback loop to developers and relevance of the checks your perform (build and test). No code that would impede the team progress should make it to the main branch.

      Continuous Integration (quick summary)

    3. A good CD build: Ensures that as many features as possible are working properly The faster the better, but it is not a matter of speed. A 30-60 minutes build is OK

      Good CD build

    4. A good CI build: Ensures no code that breaks basic stuff and prevents other team members to work is introduced to the main branch Is fast enough to provide feedback to developers within minutes to prevent context switching between tasks

      Good CI build

    5. The idea of Continuous Delivery is to prepare artefacts as close as possible from what you want to run in your environment. These can be jar or war files if you are working with Java, executables if you are working with .NET. These can also be folders of transpiled JS code or even Docker containers, whatever makes deploy shorter (i.e. you have pre built in advance as much as you can).

      Idea of Continuous Delivery

    6. Continuous Delivery is about being able to deploy any version of your code at all times. In practice it means the last or pre last version of your code.

      Continous Delivery

    7. Continuous Integration is not about tools. It is about working in small chunks and integrating your new code to the main branch and pulling frequently.

      Continuous Integration is not about tools

    8. The app should build and start Most critical features should be functional at all times (user signup/login journey and key business features) Common layers of the application that all the developers rely on, should be stable. This means unit tests on those parts.

      Things to be checked by Continous Integration

    9. Continuous Integration is all about preventing the main branch of being broken so your team is not stuck. That’s it. It is not about having all your tests green all the time and the main branch deployable to production at every commit.

      Continuous Integration prevents other team members from wasting time through a pull of faulty code

    1. Mobile app development is an intricate procedure and contains a number of stages to have a fully- functioning mobile application. The app development cost mostly depends on the type of app you are building and what features and functionalities you are Including.

    1. React Native vs Flutter vs Xamarin: A Comparative Guide [2020]

      The most popular cross-platform frameworks are React Native, Xamarin and Flutter. But, which to select out of three? We’ll go through each one of them and by the end of this article, you will get the one which suits best for your business.

    1. 1How Much Does it Cost to Make an App

      A complete mobile app development passes through stages like strategy, design, development, testing, and maintenance. During the process, each stage adds its share to the app cost.

    1. excellentwebofficial

      You have to build your own website and application for spreading knowledge. Because third-party platforms not working more if you want some customization OR want more profit. From cost of app development article. You can get all the information about what cost you may get for your school app.

    1. In this article, we are going to dive deeper into the mechanism of real estate mobile app like Zillow. I will guide you on how you could also make such kind of app for your startup idea. However, it’s not compulsory you must make an exact replica of popular property listing apps.

    1. Kinney’s team worked with Southern Vermont reporter Howard Weiss-Tisman on his social media presence and community engagement strategies to better reach his audience — and, in turn, increase donations.

      This does seem like a solid avenue to pursue and I've yet to see something like it myself in the wild. Having hosts make "asks" through social media directly could be highly invaluable as it adds an additional personal touch.

    1. If you want more features OR any customization than we have a team of experts, assisting you best as possible OR you can directly get the cost ideas of features that you are looking for from our cost of app guide.