Following up on his prior post showing how to convert DocBlock comments to official type hinting, Tomas Votruba has continued the series with a new post showing how to do the same thing but without previously defined DocBlocks.
In previous post we looked at how to migrate from docblocks to type declarations. From @param Type $param to Type $param. Even if it doesn't break code like coding standards do, works with inheritance, localized self and static and propagates types to all child classes, it's still not such a big deal.
But how do you complete type declarations if don't have any docblocks?
After a "gloom and doom" start to the post, he circles back around and shows how PHPStan and Reactor can help with static analysis. After providing several examples of how the refactor should look, he shows how to set up Reactor for both return types and the migration of properties to their correctly typed versions automatically.
In a new post to his site Nikola Posa takes a look at naming conventions in code and makes some recommendations based on his own work.
In the last couple of months, I spent a lot of time studying Proophessor Do demo project that showcases features of Prooph components, all with the aim of mastering CQRS/Event Sourcing concepts. Along the way, something else turned my attention away from the main topic - unconventional, but clean and concise naming convention for class and method names.
This was a true eye-opener for me, I immediately liked the idea and after adapting it a bit I started practicing it at work. Excited and full of enthusiasm, I shared my findings and opinions with the rest of the world.
He tweeted about his excitement but found that there was more to say and a blog post was the place to put it. So in this post he covers several "anti-patterns" to avoid in code naming conventions:
- Anti-pattern 1: Prefixes/suffixes convention for Interfaces
- Anti-pattern 2: Archetype suffix convention for domain classes
- Anti-pattern 3: "get" prefix convention for property accessors
He finishes the post with some final thoughts and a "TL;DR" image showing a "right" and "wrong" way to structure your code.
Avatrim is a loss product that can not be bought in stores. There is an exclusiveness to this product that I will mention later but for now I would like to detail how you really can successfully lose with Avatrim.
First of all I would like to just point out that just like you when I first heard about Avatrim I got it confused with all of those spams that we get about Anatrim and this definitely turned me off. I am a fitness expert and there are a pile of products on the market that make all sorts of promises of easyweight loss. Most of these loss products are just uppers that will raise your metabolism and can lead to heart problems. When my wife first saw Avatrim I had to be skeptical, let’s face it with all of the junk on the internet today I was really worried that she had found another scam.
When I looked through I could see that Avatrim was not a scam. First of all this product family that is based on high quality green tea sources has been shown to be a powerful metabolism enhancer as well as cutting your appetite.
Avatrim Benefits
Another strong benefit of Avatrim is the fact that Avatrim is not just a bottle of pills. The company that has created this product has made sure that there is an established eight year old fitness and loss program as well as other bonuses. Having this kind of established track record proves to me that this is a successful and established program.
Lastly Avatrim has a built in 100% money back guarantee as well as a PHONE number that you can call with any questions. When I look for successful products online I am very aware of how a company does business and having a smooth online online business is very easy, having an online business that works well though is more difficult and these guys seem to do things right.
How Avatrim works
Research by Japanese and other researchers suggest that if the average person were to drink five cups of green tea a day, they would burn an extra 70 to 80 extra calories through an effect known as thermogenesis – the process of heat production in organisms.While much of the thermogenesis effect in green tea is derived from caffeine, studies also suggest(2) that thermogenesis in green tea occurs to some degree beyond its caffeine content from epigallocatechin gallate (EGCG.)
So this magical EGCG works in Green tea and the compressed green tea of Avatrim to increase your metabolism as well as the caffeine to help you lose weight.
Buying Avatrim Online
Now about the exclusivity of this Avatrim product. Avatrim is only sold online and it has to be that way. Most loss products have a huge markup which is fine for cheaply made products with almost no testing. Avatrim is a product that uses high quality sources of green tea and other compounds so the product is expensive to make. You can bypass the middleman and buy it right through the links on this page and will not need to have to go through various levels of distribution. Just order online and it will come to your door.
I must say as you probably notice, I am a big believer in Avatrim and all of the great things that Avatrim can do in raising your metabolism while at the same time reducing your appetite so that you can confidently lose without having to worry about binging and sluggish energy.
One thing that I want to be very clear about and that is diet. Avatrim is not a wonder drug for loss, instead Avatrim is a supplement to a good diet and exercise program. Use this Avatrim along with your regular vitamins to help you lose weight,
Try Avatrim out today and make sure that you take advantage of the two free bottle offer that I just saw on their site.
The browser market is changing. With the recent news that Microsoft is abandoning its EdgeHTML browser engine in exchange for Chromium, it seems that Google has won the browser wars outright. What this all means is that one behemoth is, in essence, surrendering to another.
It’s not that Microsoft can’t still look to outdo Chrome in some areas, but they’ll both be building with the same basic parts. In that regard, it seems inevitable that the two products will be more alike than anything else.
Of course, given that Microsoft Edge is making up less than 2% of the market share, perhaps it’s all for the best. This lackluster showing notwithstanding, it would be a mistake to dismiss the impact of MS browsers over the past 20+ years.
With that, here are a few thoughts on what Edge, and to a much greater degree, Internet Explorer, have meant for web designers and users.
A Quick Climb to the Top
For a brief period before Internet Explorer’s 1995 debut, Netscape Navigator was the biggest browser on the web. That didn’t last long. By 1997, Microsoft had integrated IE into Windows and thus began its ascent to market dominance.
My experience in the web design community at the time was that there was a hard split among designers. Some favored IE and built sites around much of its proprietary code. For those that still favored Netscape and other competitors, the aim was more about building sites that would work on every browser.
This situation made things difficult for both designers and users. It was not unusual to see fairly large corporate websites look fine in IE, yet appear completely broken in other browsers. I can recall being hired to fix a few of these MS-enhanced messes back in those days.
One significant thing to note about this time in history was that Microsoft was often seen as a sort of villain in the industry. Its business practices were widely scrutinized and became the subject of a major court case in the United States. It even led to an infamous pie-in-the-face to Bill Gates.
But by the time antitrust proceedings came about, the damage had already been done. In 1999, IE had claimed a jaw-dropping 99% of the market.

An Improving Product with a Stubborn Past
Over the years, web designers have done their fair share of complaining about IE. But the software really did improve with each new version. By the time IE 11 was released in 2013, the browser was miles ahead of its predecessors.
The problem was that too many users weren’t upgrading to the more modern versions. While widely available in Chrome and Firefox, automated updates never really took hold in Internet Explorer. Not to mention that new versions of IE didn’t always support older versions of Windows. This resulted in widespread use of outdated entities, such as the much-reviled IE 6.
And, as anyone who had to design with fallback support for these archaic browsers can tell you, the process could be a nightmare. It took thorough and repeated testing. In turn, it cost untold amounts of time and money.
Meanwhile, IE’s competitors were releasing major versions at a breakneck pace. In particular, Chrome and Firefox were very much standards-compliant browsers. And since users didn’t have to think about performing their own upgrades, they were always on the cutting edge of technology.
As such, IE’s market dominance was no more. Looking back at October 2013 (when IE 11 was released), Chrome had jumped ahead in the market with a 3% advantage. Things would only get worse from there.
In 2015, Microsoft announced IE’s end-of-life and that the newfangled Edge browser would take the reins in Windows 10.

Edge: The Browser We Forgot
Whatever hopes Microsoft had of putting a stop to their decline in market share, it just didn’t happen with Edge. The steady decline continued after its July 2015 release, leading to the eventual demise of the product in its current form.
Was Edge an inferior product? That’s probably more of a subjective call. However, I never found it to be anything but solid and usable – that is, when I bothered to use it.
It would seem that Edge never caught on in part because of Microsoft’s inability to crack the mobile market. Remember, buying an Android phone means that you have Chrome. MS was hoping for the same to happen with the now-defunct Windows Phone.
Edge is speedy and handles the latest CSS techniques like Grid or Flexbox well enough. Compatibility wasn’t a problem nor a reason to not give Edge a try.
However, that fully-integrated experience on both desktop and mobile devices never came to fruition. One could make the case that this put Edge on a deathwatch the very day it was released to the public.

A Checkered Past with No Future
On one hand, it is disappointing to see one less innovator in the web browser market. I think that we all benefit from healthy competition and real choice. However, I don’t think I’m going to shed any tears for Microsoft.
That’s not because they’re incapable of making a good product – quite the contrary. More than anything in the present, the past history of IE and the negative effects it had on the web are what I remember most. It’s just time to move on from that legacy.
And, consumers do have choices beyond Chrome. Recent versions of Firefox have been outstanding. Plus, there’s no telling who will come up with the next big thing. The only certainty would seem to be that, for now, it won’t be Microsoft.
The post Microsoft’s Browser Legacy appeared first on Speckyboy Web Design Magazine.
Being able to keep oneself updated with latest trends, best practices and news is very crucial especially with the web evolving so rapidly today. This is equally important to become better or what they say modern developer as opposed to obsolete developer. As the technology stack evolves, the client requirements also evolve pushing us as developers to remain abreast of latest stuff as much as we possibly can.
Two of the most common methods to stay up-to-date with latest stuff is to use some RSS/Atom Aggregator or subscription via emails at various sites. These work fine but I was personally overwhelmed by the amount of new updates and posts I used to get, it was kind of hard to keep the track of it all with that many subscriptions from various sources on different technologies. I could have minimized the subscriptions but that wouldn't save the actual purpose.
Therefore being a developer, often times, you come up with your own solution which fits your needs. I wanted just a simple and focused app on just one technology eg PHP that would give me updates from various sources in one central place without bloating me away with too many or stale posts. Since idea was simple, I didn't want to spend too much time on Android so I took the route of using JavaScript to create this app. It turned out there are quite some ways to create Native apps today using one technology that can run across devices and platforms. I found NativeScript quick and easy to get started with although there are other solutions too to make native apps such as ReactNative, Xamarin, Flutter, etc.
Over the weekend, I went on to creating this app called PHPNews and I believe end result is exactly what I wanted as it serves the purpose, here is screenshot:

It collects information from various sources including official blogs of PHP frameworks such as Laravel, Symfony, Zend Framework and CMSs like WordPress and last but not the least our old friend planet-php.net.
Definitely give it a try and also share any suggestions or improvements.
View PHPNews on Android PlayStore