Blog

Home / Blog

Cookie Day. What will happen on Feb 17, 2020?

Winter is coming… A cookie day for people and their agents – browsers, that may break your user experience or even affect your life… Will it be a global Armageddon of the Web, or just cause a local malfunction of some old-time sites? It’s time to figure it out. Taste of HTTP Cookie First of all, please welcome to the world of HTTP cookies. Mozilla Developer Network gives the following definition of cookie: An HTTP cookie (web cookie, browser cookie) is a small piece of data that a server sends to the user’s web browser. The browser may store it and send it back with the next request to the same server. It was intended to introduce the state of a web session for the stateless HTTP protocol. Cookies are set by a server and then sent back by the agent with every request to the server. That, in turn, allows to manage the session, personalize user’s preferences, or track user behavior. Be Aware! Confidential information must never be stored in cookies, as the entire mechanism is totally insecure. The cookie values are visible to the end-user and can be changed by him or a man-in-the-middle. Cookies are often used to identify a user and their authenticated session, so stealing a cookie can lead to hijacking the session as well. Common ways to do that include Social Engineering or exploiting cross-site scripting (XSS) vulnerability in the application. That is why the proper baking of the cookies is so important. Besides a data payload, the cookie may also have additional settings, instructing the user’s browser how to handle it. For instance, the cookie could be a session one that is deleted when the agent shuts down, or a permanent one, expiring at a specific date (Expires) or after a specific length of time (Max-Age). All these instructions along with a cookie itself are specified by the server in the dedicated Set-Cookie header. The Set-Cookie Header in a Nutshell Common Syntax Set-Cookie: <cookie-name>=<value>[; <directive>[; <directive2>…]] All the directives could be split in two major parts. Lifetime Settings Directive Meaning <none> A session cookie is erased when the client shuts down, and the session is over. Expires The maximum lifetime of the cookie in HTTP-date format. Max-Age A number of seconds until the cookie expires. A zero or negative number will expire the cookie immediately. If both Expires and Max-Age are set, Max-Age has precedence. Security Settings Directive Meaning Domain It defines the scope of the cookie: what hosts the cookies should be sent to. If omitted, it defaults to the host of the current document URL, not including subdomains. If a domain is specified, subdomains are always included. Note: A cookie for a domain that does not include the server that set it should be rejected by the user agent. Path It defines the scope of the cookie: what URL path must exist in the requested URL in order to send the cookie. Secure A secure cookie is only sent to the server when a request is made with the https scheme. Insecure sites http can’t set cookies with the Secure directive anymore. HttpOnly Forbids JavaScript from accessing the cookie. For example, cookies that persist server-side sessions don’t need to be available to a client, and the HttpOnly flag must be set. This mitigates the XSS attacks. SameSite Strict The browser will only send cookies for same-site requests (requests originating from the site that set the cookie). If the request originated from a different URL than the URL of the current location, none of the cookies tagged with the Strict attribute will be included. Lax Same-site cookies are withheld on cross-site subrequests, such as calls to load images or frames, but will be sent when a user navigates to the URL from an external site; for example, by following a link. None The browser will send cookies with both cross-site requests and same-site requests. In general, a cookie must not be sent with cross-origin requests (where the site is defined by the registrable domain), providing some protection against cross-site request forgery attacks (CSRF). Note: Browsers are migrating to have cookies default to SameSite=Lax. If a cookie is needed to be sent cross-origin, opt out of the SameSite restriction using the None directive. The None directive requires the Secure attribute. <prefixes> __Secure Cookies with names starting with __Secure-must be set with Secure flag from a secure page (TLS aka HTTPS). __Host Cookies with names starting with __Host-must be set with Secure flag, must be from a secure page (HTTPS), must not have a Domain attribute (and therefore aren’t sent to subdomains) and the path must be /. Same-Site-None Cookies Now we are ready to dive into technical details about the upcoming changes in browser behavior. Google Chrome will be the first browser to roll out a change that might not be compatible with a web application. Here they are: Since Chrome 80, cookies that do not specify a SameSite attribute will be treated as if they were SameSite=Lax with the additional behavior that they will still be included in POST requests to ease the transition for existing sites. Cookies that still need to be delivered in a cross-site context can explicitly request SameSite=None, and must also be marked Secure and delivered over HTTPS. Firefox already has these implemented with Firefox 69 behind a developer preference flag but has given no target release version for enabling it by default. Edge has announced support with an upcoming new version, but no ETA has been given on that yet. Safari has not signaled adoption yet. Others – No adoption signal yet. Which Workflows May Be Affected Single sign on (SSO) integration with Identity Providers (idPs) via the protocols as SAML 2.0 and OpenID Connect/OAuth2. When a web application implements SSO, several redirects happen under the hood for the user authentication from the agent to idP and back with authentication confirmation. That confirmation is represented by a token sent back to the app. The app performs the

Photo by Evgeni Tcherkasski on Unsplash

How Search The Outsourcing Development Companies? Introduction

Searching for outsourcing development companies is a painstaking task. A contractor should be reliable and pro. One who can implement a task quickly, in time and efficiently. Where can we find outsourcing companies meeting the stated criteria? Most of us turn to sites with different ratings of developer companies. However, there are a lot of sites, collections do not match, open question how companies get to these tops. As a result instead of solving the problem, we get even more inconsistent information.   Which websites show what information and what conclusions can be drawn from it is the topic of our series of articles.   First of all lets deal with the sorting of companies that provide ratings:  Aggregators of companies. Websites like Clutch, 99firms, hackernoon e.t.c.Who makes top lists of companies in various fields of business. Freelancing platforms. Like Toptal, Freelancer, Upwork e.t.c. Allows you to see performers ratings before hiring them. Analyst agencies. Like Gartner, Frost & Sullivan, IDC Corporate e.t.c. Periodically publish ratings of the best companies. Depending on the business-specific of rating providers they use different approaches. It’s impossible to say unequivocally that one approach is better than the others. More correct to say that you should choose an approach that suits your goals. Before we go to the first item “Aggregators of companies” let’s write down a  task that you want to solve with outsourcing developers help and criteria that your ideal partner should have. Let’s try to find it together! For example, I want to find an outsourcing developer. That company should have experience in eCommerce and works for medium and large companies. Find out what comes out of this in the following articles. Stay tuned! Also, read another article in our blog New ones How to get access to an online database for every guinea pig breeder? and about Browser Extension development and marketing campaign based on intent data

How to get access to an online database for every guinea pig breeder?

We’ve got an interesting challenge to create backend for guinea pig breeders database. During the development process we learned that now just a few sources exist and can be useful if you want to find guinea pig test cross answer. So we’re sharing the URLs to free trial software application for guinea pig breeders. It may give you more insight into your guinea pigs. Calculate Inbreeding coefficient. Import and Export of the Data. And find guinea pig test cross answer https://www.zooeasy.com/features/breeding-guinea-pig/ https://guineapigsplanet.weebly.com/guinea-pig-breed-guide.html

Which way is better for my business Browser Extension development or marketing campaign based on intent data?

I found out that marketing campaigns with intent data using became more and more popular. I was very interested in it and decided that I’d love to do research to find out which way could be more effective for companies with cashback and coupons business because the past several months I took part in such a platform launch . Would benefits of using intent data be higher than other efforts for user acquisition? I’ll try to compare the benefits of using intent data to benefits of other actions such as UA based on social networks targeting and Browser Extension development like Rakuten’s cashback button, that finds deals, coupons, cashback at all connected with Rakuten stores and shows SERPs during their members browse something on the internet For the beginning let me share with you a bit more details what Intent data means for marketers (I’m pretty sure you know, but anyway, just in case.. )  Intent data shows which leads or accounts are actively conducting research online in other words it’s a behavioral information collected about an individual’s online activities, combining both topic and context data. So you can get a rich source of data regarding the interests of the buyer and can create the basis for predicting a future purchase. There are two types of Intent data collection: First party intent data – it also called engagement data and marketers have been using it for a long time, so there is nothing new here  Third party intent data – most interesting and newest one because this data comes from external sources. While marketing automation tracks our own web properties, third-party intent data providers can track everyone else’s. A potential buyer often makes a small review before making a purchase. He can do this review directly on the seller’s website – read a blog, download whitepapers, analyze reviews of previous customers. Or on a third-party site – that is, watch content that is related to the product.  The conversion to a purchase from such an advertisement is higher than in an      advertisement using data collected about users on social networks. According to various estimates, by 200-400%. 3.5% – conversion from Google search (alternative sources say 1.7%) versus 0.7% in social networks, averaged data on the US market. The entire search engine business is built on intent data. The opportunity to use their knowledge about the intentions of users they sell to advertisers (through Google Ads, for example) After analyzing this information, using targeting based on data from social networks for advertising no longer looks as interesting as before. Therefore, I decided that I would choose between advertising based on intent data and a browser extension development. To answer this question, first I’ll try to find out if the browser extension is really effective and how much the cost of intent data providers services. Browser extension:  First, let’s figure out why it is needed at all (if you’re not Rakuten and don’t have millions of your website visitors 🙂 ). First of all, to increase conversions in paying users. A plugin recognizes a specific product that user views and instantly displays all available coupons and discounts on it. Such triggers in 90% of cases motivate a person to buy and conversion rate increases. Also, if users allow browser plugins to view the contents of the pages they read it  can become one of the sources of Intent data as well! For example if I create a browser extension for my site it turns out that I automatically begin to collect this valuable information and in the future I can share it with advertising networks by acquiring another source of income? (Not sure but it would be good to know.. ) And the most interesting thing is that users who install the plugin also have benefits from its use, primarily by saving their time. They no longer need to constantly look at the offers of stores in order not to miss the discount, because the plug-in will notify them about it as soon as a favorable offer appears in the store.  Using SimilarWeb (also, by the way, a browser extension) I found Cashback and Coupons sites with monthly number of visitors less than 1M (To comparison: Rakuten has over 70M visitors monthly) –  https://dealhack.com, https://www.rebatesme.com. So, less than 1M users visit them every month but they all have a plugin which they actively promote on their sites. Does this mean that their plugins are effective? I can evaluate this only by indirect signs, such as plugin updates in their Chrome Store stores. All companies have the latest plugin version update released no later than November 2019, which means that they support them. Would you start spending money on supporting something that doesn’t bring you income at all? I don’t think so. I certainly wouldn’t. I assume that the plugin will help increase conversions and it would not be bad to develop it. Intent Data Providers:  Google search helped me to find a list of B2B Intent Data Providers very quickly , https://datarade.ai/data-categories/b2b-intent-data, but none of them published their prices openly, so it was not possible to quickly evaluate the financial side of the campaign. I’m going to communicate with each of them and share my results with you as soon as I get them.  

Why is an RnD outsourcing service a good choice for business improvement?

RnD – research and development – is the process, that has main goal to find new opportunities, products, services, operations or improve existing ones. Everything to increase competitive advantage. There is the stereotype, that only leading companies can afford RnD. However, nowadays middle and small companies can take advantage of the RnD process turning to the services of outsourcing companies. Moreover, even big companies increasingly prefer to entrust finding new solutions to professionals, rather than building an internal team.          Reasons to consider RnD outsourcing:   Top talent ready to work. You don’t need to bear costs for hiring and onboarding.  Faster time-to-market. Improvements or new products are ready within a much shorter time-frames. Understandable and measurable process. High-level roadmap, important metrics, demo, and MVP. Expertise in the different areas of business. Outsourcing works with various clients, that contribute to accumulating interdisciplinary expertise. That helps with finding your unique solution. Entrusting RnD to an outsourcing company will become a great decision in the process of finding new opportunities, products, services, operations or improving existing ones. An experienced team will save you time and cut costs.    Contact us and let us tell you why Setronica Research and Development service is a good choice for your business.

Why Good Commit Message Matters?

Why Good Commit Message Matters?

Discovery Phase to Define Project Focus

Unified eCommerce Product Catalog

The Idea Unified eCommerce Product Catalog is an eCommerce system based on Java. It was originally developed as NoSQL-based eCommerce data model repository for processing large amount of eCommerce-specific data: product, category, price, and inventory. Unified eCommerce Product Catalog is organized on the concept of one aggregated product entity connected with multiple supplier/vendor offers (inventory, prices, shipping options) and multiple content providers (product description. attributes, languages and etc) Additionally it provides a built-in highly-optimized object-oriented Java API for easy and seamless integration with third-party solutions A high level overview The main goal of the UCS system is to provide platform for building E-Commerce Catalog-based services with high entity management operations performance (~above hundred millions transactions/operations per second in average) It is oriented for eCommerce systems usually use search/query/get much frequently than update/modify operations with data stored in their persistence to get more benefit from in-memory storage Main insights all data is stored in RAM all changes are fleshed into persistence store few predefined set of entities and their relations are supported: Product, Product Content, Product Identity, Product Variation Family, Attribute, Category, Category Tree, Offer, Channel, Owner data persistence can be done by traditional RDBMS or non-RDBMS database (like PostgreSQL or MongoDB) access through object-oriented API transactions only on single operation level Architecture  

SETRONICA


Setronica is a software engineering company that provides a wide range of services, from software products to core business applications. We offer consulting, development, testing, infrastructure support, and cloud management services to enterprises. We apply the knowledge, skills, and Agile methodology of project management to integrate software development and business objectives effectively and efficiently.