Conosco Raffaele Gaito dai tempi dell’università, e mettiamolo subito in chiaro: siamo amici 😎 Oggi dobbiamo fare finta che non abbiamo mai bevuto una birra insieme (mai!) e parleremo di una cosa che Raf conosce molto bene: il Growth Hacking.
When I posted the NaN article on facebook in a programmers group, I received some very bad reviews. Let’s analyze them.
Yesterday I was doing some maintenance on a corporate website when I found out that
NaN if the argument is, well, not a number.
I’m really excited to write about one of my latest works: the redesign of Gestpay’s website.
What is Gestpay
Gestpay is the most famous Italian payment processor, owned by Gruppo Banca Sella. It allows websites to accept payments on your ecommerce and your online activities. The main features are:
Accept credit cards from all over the world
Integrates with 80+ alternative payment systems, like PayPal, Apple Pay, Alipay, Qiwi, Sofort, Klarna… And more!
Allows to customize the payment form
multiple layers of security (3d secure, Gestpay Guaranteed Payment…)
It is suitable for small, medium and giant businesses
Still on track after 20 years
One of my first jobs was to design a documentation website, with the goal to be as clear and simple as possible, for developers. We did it!
So, what’s great about this?
Working with designers is great
This is the first thing that comes to mind. For the first time in my life ever, I had to implement the work of a professional designer. Behind many choices (like, how many pixels here and there) there was a long discussion that could be going. I want to say this in bold: every frontend developer should work with a designer.
His job started before mine: based on feedbacks received from Facebook contacts, we had a sense of what of the old site was clear and what not.
Then, we performed usability tests that confirmed our hypothesis, thus giving us a clear direction on how to setup the navigation.
He realized the layout and thanks to a product called invision I could check all the relevant data for me, like colors, spaces, grab the images, etc.
Only small subset of prerequisites
When we started, it wanted to be a minor redesign of our website. So we decided to approach it lightly.
Reuse components of the previous website, as much as we could
Reuse existing css if possible
Mobile and tablet friendly
However, the old website was using a structure doomed with old plugins that were not supported anymore. I decided to rewrite a big part of the website structure from zero, reusing only the SCSS (that was indeed very well organized).
Gestpay is made with Jekyll, a static website generator. It is written in ruby but you don’t have to understand a line of ruby to get it working.
For the styling part we used SCSS, a CSS extension that allows to split styling in many files. This doesn’t solve all styling problems, but by using two guiding principles like ITCSS and BEM, we wrote clearer class names and organized stuff logically.
Combining this with responsive classes, like
media @screen and (max-width: 650px), we have developed a website that is also mobile friendly, from the first line of code.
I can’t say how much Flexbox I have used. Flexbox is so cool I rarely had to use other display properties. Give it a try!
A word on Internet Explorer
Internet explorer is still used out there; it’s about 3-7% of the total traffic received on our website. For some complex styling options I had to write some rules for IE only. Edge, on the other side, is great and supports every new standard. We think IE will be less and less important, so this technique (add a discriminant class if the browser is IE) should be future proof.
Stop using IE! It has been deprecated!
A word on Safari
Developing for mobile (iOS) is impossible if you don’t have an iPhone with you.
For some reasons Safari is not that cool. For example, when you scroll down a page on iPhone the viewport gets bigger, while If you scroll up, weird effects apply. This happens because the button bar hides at the bottom. From a user experience point of view, this is not optimal.
That’s all folks!
Now we are checking the stats to see if every user can achieve the promised UX. We are also monitoring new bugs and eventually 404s. We believe to have done a great work in simplifying the user experience; check it out and give us your thoughts!
A lot of stuff has happenend in the crypto-mining world: antiviruses, search engines, private miners, and more.
There are private miners out there
However, I’ve been contacted by a facebook friend that offered me to enter an “exclusive program” with a private monero miner, untraceable by antiviruses because it’s self hosted.
The reason is that, in his opinion, Coinhive and others lie about your true visitors and give you less in terms of cash.
I cannot tell you his name (private!) and I must say that I tried to enter his “programme” but at the end we didn’t achieve anything. It was just too complicated.
If your browser consumes too much CPU maybe you’ve found a private monero miner.
Antiruses and Extensions
I have personally tried a Firefox extension called NoCoin and it works for me; infact, my blog was blocked. On Chrome you might try other extensions.
Other friends have told me that antiviruses like Avast alert the user about the script. Some friends think that my website has been hacked :p
This is a great problem for website owners; if you are going to use something that is considered a threat, how can you bring users to your website?
Coinhive’s new project: Authedmine
Coinhive tries to stop antiviruses by creating a new project called Authedmine. The idea is simple: show a popup when users land on the website, explaining what’s going on, and how to opt out. The choice will be remembered for a session.
I’m using this on my website, now.
Mining vs Ads
Many bloggers or small enterprises see in cryptomining a way to avoid ads and earn some cash from their websites: users are splitted - the enthusiasts, “finally a way to not show ads entirely!” and the enemies, “the CPU is mine and I decide what to do with it”.
However,most users just don’t give a f*ck.
Will my website be blocked by Google ?
I believe this. Not because it’s a virus (it isn’t!) but because cryptomining is eroding (might erode) some market share from advertisement.
Don’t forget that Google is a big reseller of ads, and if they won’t sell ads, their business is over.
They are also a big search engine and if your website doesn’t show up on Google, well you just don’t exist.
So I imagine that in the future they will block cryptomining because it’s interfering with their business. They can unilaterally choose this.
However, There is no official position from Google about this.
The best comment about my experiment
I tried to open the page, and my macbook started screaming with pain. I have marked the url, and I have promised myself to never visit again. These things should not be done for morality issues, you’re literally ruining your users’ hardware. I didn’t even read the whole article, I closed immediately. For me, a big NO.
By deciding to use a cryptominer in your website, you should also think of users like him.
The day I found out that I could make some money with my blog, I was elettrified. It was (I believe) 2007. it all started with Adsense. However, for a small blog like mine, Adsense is not a perfect choice. Infact my analytics do speak for me: I’m not the most trafficked website on earth and my blog does not have the direct scope of making me earn cash.
Appena ho finito l’università ho acquistato un Macbook Air, che è durato ben 5 anni (!). All’epoca lo presi perchè, da neolaureato, non volevo chiudermi l’opzione di realizzare app per iOS, cosa che poi non è mai avvenuta. Quindi per il lavoro di tutti i giorni ho deciso di uscire dalla comfort zone e prendere un nuovo pc: un Dell XPS 9560, con schermo da 15”.
Esitono persone che ritengono che viviamo in una grande, enorme simulazione al computer, magari realizzata da una civiltà aliena che ci sfrutta o ci osserva, manco fossimo al Grande Fratello.
In this post I’m going to talk about an authentication “protocol” called JWT, that allows to secure an API so that only authenticated users can use some requests of your API. And more importantly, a user cannot impersonate another by changing something in the request, so we can be reasonably certain that a user is who claims to be.
Ormai sono un paio di mesi che mi sono appassionato all’anarchico mondo del bitcoin, ossia questa moneta virtuale che esiste su internet che gode di un’infinita serie di proprietà positive: è anonima, decentralizzata, incontrollabile, incopiabile, incraccabile…