Can I integrate a payment gateway in a shopify store?

Hi,
I am thinking to build a digital restaurant and conisering in using shopify. At the place I live most of the international easy to integrate payment gateways don't allow this country (Macao SAR). The banks here have their own payment gateways and I would like to know how easy it is to integrate a payment gateway with a shopify store? And it would become very expensive the development?
Thanks a lot!
Paulo

Flash of inAccurate coloR Theme (FART)

There is a lot to think about when implementing a dark mode theme on a website. We have a huge guide on it. There are some very clever quick wins out there, but there are also some quite tricky things to pull off. One of those tricky things is how it’s not a dark mode “toggle” between dark and light, but really three modes you need to support: dark, light, and use system preference. That’s similar to how audio preferences work in many apps, which allow you to very specifically choose which audio input or output you want, or default to the system preference.

CSS and JavaScript can handle the system preference angle, via the prefers-color-scheme API, but if the user preference has changed, and that preference is now different than the user preference, you’re in the territory of “Flash of inAccurate coloR Theme” or FART. Ok ok, it’s a tounge-in-cheek acronym, but it’s potentially quite a visually obnoxious problem so I’m keeping it. It’s in the same vein that FOUT (Flash of Unstyled Text) is for font loading.

Storing a user preference means something like a cookie, localStorage, or some kind of database. If access to that data means running JavaScript, e.g. localStorage.getItem('color-mode-preference');, then you’re in FART territory, because your JavaScript is very likely running after a page’s first render, lest you’re otherwise unnecessarily delaying page render.

User preference is “dark” mode, but the system preference is “light” mode (or unset), so when the page refreshes, you get FART.

You can access a cookie with a server-side language before page-render, meaning you could use it to output something like <html class="user-setting-dark-mode"> and style accordingly, which deftly avoids FART, but that means a site that even has access to a server-side language (Jamstack sites do not, for example).

Allllll that to say that I appreciated Rob Morieson’s article about dark mode because it didn’t punt on this important issue. It’s very specifically about doing this in Next.js, and uses localStorage, but because Next.js is JavaScript-rendered, you can force it to check the user-saved preference as the very first thing it does. That means it will render correctly the the first time (no flash). You do have to turn off server-side rendering for this to work, which is a gnarly trade-off though.

I’m not convinced there is a good way to avoid FART without a server-side language or force-delayed page renders.


The post Flash of inAccurate coloR Theme (FART) appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Full Site Editing Is Partly a ‘Go’ for WordPress 5.8

Today, Josepha Haden Chomphosy announced the results of yesterday’s “go/no-go” demo and decision on whether Full Site Editing (FSE) would land in WordPress 5.8. The site editor and global styles are not landing in the next release. However, several other features should launch and allow users to build their sites with blocks in new ways.

The following people attended the demo:

  • Matías Ventura – Demo Host and Gutenberg Project Lead
  • Matt Mullenweg – WordPress Project Lead
  • Helen Hou-Sandí – Lead Developer
  • Josepha Haden Chomphosy – Executive Director
  • Héctor Prieto – Technical Project Manager
  • Chloé Bringmann – Assisting with administrative and operational logistics

Ventura walked the group through the various FSE features that could be ready for WordPress 5.8, taking questions and discussing along the way. There was also a discussion afterward that focused on ideas beyond the next release.

The following FSE-related features are expected to ship:

  • Improvements from Gutenberg 9.9+.
  • New theme-related blocks like Query, Site Logo, Navigation, and more.
  • theme.json integration, which allows themes to define block defaults and settings.
  • Template-editing mode for the block editor.
  • Block-based widgets screen and customizer integration.
  • New block design tools, such as duotone (SVG filters for images), layout controls, padding, and more.

“Not all of the above are currently ready but there’s some level of confidence that they can be by the time of 5.8,” noted Haden Chomphosy in the post.

This list feels like a solid compromise between launching some of the more polished FSE features and trying to force in those that are probably out of reach for a July 2021 release. The features also provide current users access to new block tools without activating a block-based theme.

The group focused on the Query block for much of the early discussion. The Gutenberg development team will likely change the block’s user-facing name to something less confusing. It also needs a bit more polishing to make things more user-friendly. I am interested in seeing how theme authors use this in conjunction with patterns once this launches.

One other feature that users should look forward to is the pattern directory. While it is not ready for integration into the WordPress admin UI, it does not need to be. Users will be able to copy patterns from the directory and paste them directly into their editor. In time, it should become a part of the built-in experience.

The group seems to have made a good call on which features to include. It is easy to want to push forward and get everything into the hands of users. It can be tougher to pull back and compromise.

Full video of the demo:

I had two takeaways that stood out to me more than anything in the meeting.

Takeaway #1: Page Template Editor

In WordPress 5.8, users should gain access to the template editor. On the page-editing screen, it allows users to switch out of content-editing mode. From there, they can work on the overall template. Essentially, for this release, it would serve as a landing page builder.

This is a sort of middle ground between just the block editor and the eventual site editor. I like this route because it does not overwhelm end-users with a complete site-editing experience at once. It is a helping hand, a transition from the current phase to the next, allowing users to familiarize themselves with more advanced tools.

The template editor will work for all users too. They will not be required to run a block-based theme to access it. Because each template would be a one-off use case, WordPress can serve this up without theme authors opting into it.

Many block-ready themes have already been including an “open canvas” type of template. This would remove the need for those unless also including it for third-party builders. It would also solve the portability issue when users switch from a theme that bundles the template and one that does not.

Takeaway #2: Many Block-Based Themes

At the end of the discussion, the group was more or less spitballing some ideas beyond version 5.8. In particular, Hou-Sandí shared a vision of what theme development for the official directory could look like in the era of FSE.

“Because the full site editing, like from a user-facing point of view, is not about page building all the time,” she said. “It’s about tweaking what’s there. Yeah. So I feel like the correct thing for core to do in terms of bundled themes is actually a bunch of small bundled themes.”

I have previously written about how work on Twenty Twenty-Two should already be underway instead of waiting until the last moment to piece a new default theme together for the end-of-the-year launch. The yearly default theme system has served the community well for over a decade now. I am already warming to the idea of turning it on its head and forging a new path.

With FSE, developers do not necessarily have to follow all of the rules of traditional themes. Themes like Kjell Reigstad’s Carrd-like, two-column landing page theme would be well-suited to such an experiment. Smaller, more experimental projects like this could replace the old Twenty* theme system with something new or even complement it.

Hou-Sandí also threw out a few ideas around building block-based themes via a library of CC0 images, the patterns directory, and copying/pasting things from WordPress.org. She likened it to the CSS Zen Garden era. It could even open the possibility of bypassing the theme review process since everything would be pre-vetted.

But, these are thoughts for tomorrow. For now, we are at least getting some initial FSE components.

Working With dotConnect for Oracle in ASP.NET Core

Introduction

dotConnect for Oracle is a fast ORM for Oracle from Devart that is built on top of ADO.NET and provides you an opportunity to connect to and work with Oracle databases from your .NET or .NET Core applications. It is a fast, scalable data access framework that can be used in WinForms, ASP.NET, etc.

The article discusses the striking features of dotConnect for Oracle and shows how to work with it in ASP.NET Core.

Working With Stored Procedures Using dotConnect for Oracle

Introduction

A stored procedure comprises a set of SQL statements and PL/SQL constructs that are grouped together. Stored procedures, as well as functions, can have input, output as well as input/output parameters. dotConnect for Oracle provides excellent support for working with stored procedures.

It is a fast, scalable ORM for Oracle from Devart that is built on top of ADO.NET and provides you an opportunity to connect to and work with Oracle databases from your .NET or .NET Core applications. You can use this framework in your WinForms, WPF, ASP.NET, and ASP.NET Core applications.

Zerodium Temporarily Triples Payout to $300K for WordPress Exploits

Zerodium, one of the most well-known security vulnerability brokers, announced that it is tripling payouts for remote code execution exploits on default WordPress installations. Payouts are typically $100K but have been temporarily increased to $300K.

The company focuses on acquiring original and previously unreported zero-day research. It pays researchers for high-risk vulnerabilities and fully functional exploits, with the highest rewards at $2.5M for ‘full chain, zero-click, with persistence’ Android exploits. This price tag was increased from $200K in September 2019, suggesting Android exploits have become more difficult to find or that demand for them has increased significantly.

Exploit resellers operate within a sort of grey area of security research. As a standard practice, security researchers are encouraged to report vulnerabilities to the original developer of the software, not an intermediary that may pass it along to a party that may not use the information for good. The appeal of these companies is that they pay more than most organizations, hence the tagline: We pay BIG bounties, not bug bounties.”

WordPress has an account with Hackerone to pay security researchers for vulnerabilities but payouts are much smaller in comparison to what exploit brokers pay. This makes it a tough choice for security researchers who do this for a living. Professional zero-day hunters are looking for the highest payouts for the vulnerabilities they find, which can sometimes take months or longer.

Zerodium does not reveal who its clients are or what their purpose is for buying the the vulnerabilities. The best case scenario would be a government entity wanting to secure its own systems. Even then one cannot guarantee that they use the exploit ethically or that they don’t inadvertently leak the exploits where they could be used maliciously by others.

Zerodium did not elaborate on why it has increased payouts for WordPress exploits to $300K. WPScan speculates that the company may suddenly have a greater demand for WordPress RCE exploits, combined with WordPress becoming more secure:

This could indicate that WordPress is becoming more secure and that it is getting harder to find the critical security issues that buyers want. On the other hand, we must also assume that these types of exploits already exist and are already being actively sold on Zerodium and other similar platforms.

We could also conclude that if a government is going to pay more than $300,000 on a WordPress RCE exploit, that they intend to use it. World governments may even barter over the exploits so that the seller, in this case, Zerodium, gets the best price.

WPScan also emphasized that with WordPress having such a large presence on the web, an exploit against core with those particular characteristics “would be devastating to the web as a whole if it landed in the wrong hands.”

“Zerodium increasing their prices may indicate that it is becoming harder to find these critical issues in WordPress Core,” WPScan founder and CEO Ryan Dewhurst said. “That, at least, should be good news for WordPress and the web as a whole.”

2021 IaC Forecast: 5 Predictions for the Upcoming Year

I would like to start a tradition — I am going to gather all the discussions I had last year with customers and will craft my predictions on how DevOps and related technologies will evolve and impact business in 2021. As most of my discussions with customers are always focused around Infrastructure as Code (IaC), this is where I feel I can most accurately speculate. 

The world of automation has changed in the past year, remote work, support of remote business, the new digital era, and pandemic constraints will force infrastructure and code automations to level up in 2021. All in all, it is clear that the direction is more automation and less manual work.

4 Essential KPIs for Software Teams to Track Their Productivity

If you’re project managing a software development team, you’ll know all too well the trials and tribulations that come with the very nature of the job. 

Because software development is all about adapting and developing software to be the very best it can be, there are inevitable highs and lows in the process.

Build and Play, In what order?

OMEN Computer- The OS is installed on a NVMe SSD 256GB. I purchased a new NVMe SSD 2TB. Now when I switch them out I will lose the OS. I also Purchased a Windows 10 Home. Should I first put my win 10 on a different drive then transfer it to the new NVMe after its installed?

Or can I switch the NVMe's and, Install my new Win. 10 onto as computer that has NO OS at all?

API Security Weekly: Issue #129

This week, we obviously have to discuss the hundreds of millions of Facebook and Clubhouse user profiles that were scraped using APIs. In other news, Forrester has published their fresh and insightful report “The State of Application Security”, and there’s a new online training “Building an Identity Architecture for APIs”.

Data Leak: Facebook

The biggest recent data leak news is the huge database of 530 million Facebook users that was made available. Facebook has made an official statement on the incident, downplaying it because the data was “scraped” already back in 2019 using Facebook’s APIs, rather than obtained through some sort of database access or another “direct” hack.

Countdown timer using LC3 Assembly Langugae

I want to make a timer that will countdown from a number that a user will give such as 20 min. If it is easier I could use the timer as a set amount each time. I want the timer to countdown from 20:00 down to 00:00 (min:sec). I want users to be able to pause and start the time by pressing a s for start and a p for pause. If you have any questions let me know, any help will be greatly appreciated.

Python Memo 2: Dictionary vs. Set

Basis of Dictionaries and Sets

A dictionary is composed of a series of key-value mapping elements. In Python 3.7 +, a dictionary is determined to be ordered, however, before 3.6, a dictionary was disordered. Its length is mutable and elements can be deleted and changed arbitrarily. Compared with lists and tuples, the performance of dictionaries is better, especially for search, add, and delete operations. A dictionary can be completed within a constant time complexity. A set and a dictionary are basically the same, the only difference is that a set has no key-value pairing and is a series of disordered and unique element combinations. 

First, let's look at the creation of dictionaries and collections. There are usually the following ways;

May I Know where is my mistake

#include<iostream>
using namespace std;
int main()
{
  string weekday;
  weekday= {"Mon","Tue","Wed", "Thu","Fri"};
  cout<<"\n Please select day of booking:";
  cin>>weekday;
  cout<<"\n Day of booking:";

  return 0;
}

Containerized 5G Infrastructure Visibility

Cloud native and containerized architectures are becoming the de facto design standard for 5G networks and applications. In the telecommunications industry, the players are focused on building out 5G Stand Alone (SA) deployments to deliver the promise of faster connection speeds to enable IoT, medical, and autonomous use cases – not to mention improved communications, support for streaming real-time content, and the promise of myriad new applications and services. In working with Tier 1 operators, MVNOs, and analytics providers, we are encountering a staggering issue: they can no longer adequately monitor, correlate, and measure critical network and application communication events at the container level and across the infrastructure.

As we have illustrated through our demonstrations and proof of concept deployments of our Containerized Visibility Fabric (CVF) with telco and related technology suppliers, the most common phrases we’re hearing during the engagements are: