When I went to Tokyo, I was lucky to meet the author of the BEAR framework, Akihito Koriyama. Like many great products worldwide that were made there, this framework is also made in Japan. So I thought, I should ask him about it, and be able to share a Q & A interview to the I.T. world and give others a chance to get to know more about him and his PHP framework. So here it goes:
1. When did you first write the BEAR framework and what inspired you?
More than a decade ago, I started as a video game programmer. On game programming, you have a request, computation and response. Then I moved to web programming, it seems to be more simple, I saw a reusable pattern and wrote from there, I created a framework without knowing what it was.
What inspired me on creating it was the REST aspect of the web, then I created a pattern.
Aura framework influenced the development of BEAR.Sunday.
2. When not programming or working, what do you do?
Travel, driving, nature, art and films.
3. Why do you name it BEAR?
It’s an acronymn for Because Everything is A Resource.
4. How long did you develop a framework?
I developed BEAR.Sunday before it became stable for more than 2 years.
5. Insights on what you are working on with now?
I’m working on a more practical components, like ReactJS and Oauth. Tools like an online debugger for development.
6. What do you like the most about your framework?
Its simplicity, its concept, the REST oriented design and its performance.
7. What are the main features of the BEAR Framework?
It’s API (REST) oriented design, AOP feature, the behavior can be changed by the context. And virtually everything is injected.
8. What are the tools that you use?
The basic tools that I use are PHP Storm, Xdebug and PHPUnit.
9. What do you think is the future of the web?
The apps can be a component, it can interface with each other, like more applications can be a component of each other.
And then the progressive web apps, meaning you don’t have to be connected all the time, it can be used offline and can sync when online, native applications will be needed less.
10. Do you have a suggestion(s) for other developers?
I suggest to change the outlook. How you see the problem, viewing the problem from different angles.
(In case you are wondering, I didn’t have to translate our conversation, he’s good in English.)
We all gotten used to MVC frameworks, but this framework is actually RMR-based and not the typical MVC. What does it mean? MVC is originally designed for desktop apps and not for the Web, and how the Web works and serves data is actually a bit different, hence the more appropriate way should be the RMR or Resource-Method-Representation, but describing this in details requires a whole new article, so please check it here instead. Using this approach made it very easy to share resources if needed, in a RESTful way.
Now that we know more about it, then we should give it a try if we haven’t done so. And see what it can do for our new web applications.
For me, what I like about this framework other than the RMR feature, is, it is already modern, and you are not tied to any components because it is already Composer-based, you can use whichever component you like or need. And I think that I should also mention that it has a 100% coverage and a score of 10 on Scrutinizer (as of this writing, you can see the score on Packagist).
Please check it out here, BEAR.Sunday.