Altabel Group's Blog

Archive for the ‘Uncategorized’ Category

When looking for a suitable web framework you could definitely come across – Symfony and Yii – top PHP frameworks. But what to choose?  Most interviewed developers prefer Symfony than Yii. Let’s see why.

 

Code maintenance and management. I believe there is no problem to create a code from the very beginning. Still when it is a long term project there could arise some issues – for instance, after several months of the development on Yii there could arise some problems with small workarounds, hooks…it would definitely work but supporting would kill you. Protection from corruption is quite important for every company but who would like to care about hooks and workarounds everyday if these issues could be avoided?

Style of the code. Yii team has their own code style, it’s great. Still it can be a problem in case you have a project with different code guidelines than Yii team use. Sure, you can contribute some extensions in Yii community and save the extensions similar to native Yii code. But in the end you would have to switch between different code guidelines all the time – not great. Namespaces. Namespaces helps to shortcut class names, helps with classes autoloading etc. Yii doesn’t not use them. I believe you would feel more comfortable with namespaces.

Test driven development (TDD) issue. As for code testing, tests should be written easily. In case Yii, its global service locator (Yii::app()) destroys attempts to write tests. Starting with one test, after some time you would understand that you would need to mock this service and another one, and both of them depends on 3rd service…in the end  many services interact with each other in Yii L As a result we get tight coupling, which is tricky for performing decoupling application.

Thus, in spite of Yii has CWebTestCase, fixtures, base integration with phpunit etc it is more useful to test services/models without mocking other services and framework classes.

ActiveRecord. Having ActiveRecords as framework core is great, it’s really useful for beginner. Still Yii active record is too simplified and tightly coupled. Another more serious issue – there is no separation between entity and entity manager. Using Yii we have to use static methods for querying models and non-static methods for model logic. ActiveRecord and ActiveFinder are provided by a single instance in Yii and there could be a trouble when queries mixed with entity getter/setter.

Ah, regarding to static methods for querying, they can’t have state except for static one. And if you want to mix few conditions you have to merge criterias. What is Symfony in this case about? It has Doctrine 2 – quite serious ORM with unit of work and other cool things. Or as an option you can try Propel ORM. There is the things you would really like: real getter/setter, db schemas and migrations generation, behaviors that actually a generator addons, reach set of generator properties and integration in some Symfony components like forms and validator. It has some issues as well, still it works better and you can get clear separation between entities and queries.

Extensions. As for  extension in Yii, firstly you should find and download it on the Yii site,  manually copy it to the project directory, attach it in config. And then to monitor the site for updates. Such procedure is not comfortable for 21th  century. Composer could be a great choice in this case. You can easily define project dependency and run update. It download extension/lib/component/bundle or whatever you want, setup autoloading and you can use it. Also composer cares about all component dependencies and downloads them.  All components can be updated to most up-to-date version with one command. Also you can specify which version to use: to download test or dev versions , it’s easy!

There is another cool thing – contributing. It’s easy to publish your package and make it globally available, easier to define versions, easier to fork extensions, easier to send pull requests etc.

Now some short facts about Symphony:

  •         Symfony is not a framework but a project. Depending on your needs, you can choose to use some of the Symfony Components, the Silex micro-framework, or the full-stack framework.
  •         Symfony is used by many large companies (like the BBC or CBS), by many large websites (like TEDwetter.comLockers) and some Open-Source projects are also powered by Symfony (CMSes likeDrupal or eZpublish, libraries like PHPUnit or Doctrine, products like phpBB orshopware).
  •         Symfony enjoys a huge community of users and contributors; during the last year alone, 550+ people contributed to the Symfony core and the community created over 1,600 bundles for the full-stack framework. Symfony also has several annual dedicated conferences around the world and a large number of user groups.
  •         Symfony has been created in 2005 and here to stay. Besides SensioLabs, many other companies rely on Symfony for their clients and they contribute, invest money, and sponsor the future of the project.
  •         Symfony embraces the “don’t reinvent the wheel” philosophy, and provides tight integration with many other Open-Source projects.
  •        Symfony tries to bring innovation to PHP: it was one of the first major frameworks to embrace PHP 5.3, to introduce the usage of a Dependency Injection container, and to use a templating engine for its templates by default,Twig, which is now also adopted by major CMSes like Drupal and eZpublish. Symfony also has some unique features like its gorgeous debug toolbar and its great built-in profiler.

Conclusion. In case you would like to create a small blog – Yii would be a great choice. If you are going to develop a serious application, if you know why you need a Dependency Injection, and need to cover most of the code tests, need a super plug-in architecture, work with migrations and a fixture – only Symfony.

Thank you for your attention and look forward to your thoughts.

Elvira Golyak

Elvira Golyak
Elvira.Golyak@altabel.com
Skype ID: elviragolyak
Business Development Manager (LI page)
Altabel Group – Professional Software Development

To make sure your reputation stays clean, you have to keep an eye on what’s being said about you. These tools can help you protect your good name. If you conduct business online, or if you have an online presence for a product, service, talent, or skill, you need to manage how the millions upon millions of online users perceive you. It takes only a few bad comments, posts, or blogs to ruin the reputation you have spent years building. Fortunately, there are tools out there to help you manage that reputation. Those tools aren’t exactly obvious — and you have use caution when selecting them (to make sure you’re not about to get caught up in a scam). But when you find a reliable tool, it’s wise to make use of it.

Here are five tools you can use to help you ensure that your online brand and reputation are where you want them. Naturally, these tools require some work to really make the most of what they offer. And most of them aren’t just one-time usage tools — you actually have to spend time with them to really help massage your reputation.

1. Google’s Me on the Web
Google has a nice tool that allows you to easily monitor search results for your name. Me on the Web is included in the Google Dashboard. It allows you set up search monitors for your name/brand, assists you in the removal of unwanted content, and can help you manage your online identity. The search monitors are incredibly helpful as they alert you when others (individuals, companies, etc.) mention your name or your brand.

2. Reputation.com
Reputation.com is a service that allows you to see how you look online. The service is free and it doesn’t use your information for any untoward activities. All you do is create a free account. Then you can monitor your online “buzz,” search for and remove any negative information/mentions about you, and find out how you can control what people see when they search for you.

3. Naymz
Naymz is not a free service (although you can sign up for a 30-day free trial) and is a bit different from the other tools. Naymz is a network that includes tools to help you manage your reputation. With these tools (and with interaction within the network) you earn free products and services (as your reputation grows). Thanks to the Naymz network, you can get a quick assessment of what your peers think of you as well as connect to Facebook and Twitter.

4. Whos Talkin
Whos Talkin is a social media search tool that shows you what members of social sites are saying about your name or brand. Using the tool is as simple as entering your name (or brand), clicking search, and waiting for the results. Whos Talkin doesn’t help you manage those results, but it will give you a lightning-fast look at what the Web is saying about your name or brand. What is done with those results is up to you. Why use this over a simple Google search? Whos Talkin focuses only on social media, so your results aren’t buried inside other results.

5. Yasni
Yasni is a nice free tool that lets you search for people and services. The results of those searches will tell you how that person/service is seen from an online point of view. The only downfall of Yasni is that it will include any results that match your criteria. You are also given popular search terms that are associated with the name/service. Although you won’t find tools to help you correct any negative comments/posts/results, you can at least discover all the key terms that are associated with you and your brand.

Your reputation is everything in this constantly shrinking online-centric world. If you don’t monitor and manage your online name and brand, you run the risk of seeing your reputation plummet and your value disintegrate. Give each of these tools a test – drive and see if you can come up with a one-two combination to help you keep your reputation in check.

Kind Regards,
Lina Deveikyte
Altabel Group – Professional Software Development

Past Monday introduction of another low-priced rival to the iPad won’t keep anyone at Apple’s California HQ up nights, analysts said. They state neither the Kindle Fire nor the Nook Tablet menace Apple’s dominance of the tablet market. Let’s see what LI members think on this point.

“If you are looking for the best e-reader and not the best tablet – stay away from the iPad – you can’t read it in the sun.”
Michael Greenberg
Corporate Recruiter at Clearwire

“If you want something just to use as an e-book reader, I’d go with the Kindle (not the Kindle Fire). It is, by far, the best of the three for reading. But that’s pretty much all you will be doing with it. On the plus, my Kindle has been in my coat pocket for a month without a recharge. Just turned it on and the battery is sitting at a quarter.”
Greg Henle
PHP Developer at Quotient

“Kindle designed to read the books. People who designed Kindle (at least Kindle Keyboard version) knew few things about books and kept in mind that this device will be used for reading. E Ink screen (no glare), large buttons to scroll pages on each side and month of battery juice makes it simply best piece of hardware for book reading. On top of this, 3G version offers free 3g wireless access to Amazon store at any time. And all this at $139.00.
IPad looks cool, it’s trendy but designed for people who don’t like or simply can’t read, especially something boring like a book. Perfect device to play Angry Birds though. And it cost $500.
And Nook. Well, nobody cares. Honestly, Barnes & Noble should stick to what they do the best – losing in everything to Amazon.
Bottom line: Buy Kindle Keyboard 3G if you need best book reader. For everything else – iPad or any other tablet will do the trick.”
Andrei Vesselovski
Directing e-commerce development and e-branding strategic planning

“I have the Kindle and also an iPad.
I believe that the Kindle is great for reading actual books published with a Kindle version but what it doesn’t do is have a large collection of magazines, newpapers, and RSS feeds that I personally like to follow.
When it comes to reading e-books, I’d recommend the Kindle for great visibility, durability, and it doesn’t strain your eyes. However, I’m quite the night owl myself so I’m disappointed that my Kindle does not have a back light (can’t read in dim lights and I don’t like those little light bulb clips).
The iPad is good for other things (especially with the Flipboard app) like magazines and news, but it does strain on your eyes after a while and is rather heavy without a stand. It does have a back light though and I love reading it at night. Also note that the iPad also has a Kindle app.”
Julie Mok
Experienced Game Flash Artist in Production, Assets, and UI | Game Marketing and Product Management Enthusiast

“Kindle Fire hands down. First of all the main reasons to buy a tablet in the first place are eBook capability, web browsing, multimedia and applications. Kindle Fire supports of all of those at a lesser price than the iPad. Additionally the price makes its accessible to nearly anyone. Add to that the free cloud drive account which means there is no need to have multiple versions with different hard drive sizes.
It’s more portable, the screen is very durable, and because of the size and cost less cumbersome as mobile device. Wi-Fi only is also not an issue because of all the Smartphones with Wi-Fi, why pay for another feature and another data plan?
Also it simplifies the nature of online shopping natively through the Amazon store, which offers music and video much like iTunes, but unlike them you can in the same place purchase other more common retail products also.
The Kindle Fire is the more practical tablet for everyday people and business folks in my opinion, based on capabilities, pricing, accessibility, and how seamlessly it integrates into your regular activities.”
Roberto Blake
Inbound Marketing, Web Design, Graphic Design

And what device do you prefer? Please share your thoughts in comments bellow.

Kind Regards,
Lina Deveikyte
Altabel Group – Professional Software Development

Mac or PC? Who is winning the battle? I gathered some information from LI professionals and would like to share it with you.

«I would say Windows is still dominating, especially in the business world. Mac is a great platform but lacks some of the flexibility of Windows. This debate could go round and round but it comes down to feel. I personally like the feel of Windows but would rather not deal with the spam and security loopholes. Mac feels tighter but is a bit more challenging to customize or extend if the software doesn’t exist already. My take on it is, I love my Windows XP Pro laptop for work and I love my iPhone 4 I think they are both brilliant. So maybe combining both systems in the short run is the optimum way to go. Also, I don’t believe Macs have domination in the creative market for any specific technical reason. I just tend to see creative people liking the stylish and trendy Mac look and feel, but they run the same programs like Photoshop, Aftereffects, etc on both platforms. So don’t be fooled when making your choice that for some reason using Photoshop on a Mac is far superior to using it on Windows, it’s the same…»
Mike Taylor
Senior SAP Consultant

«It depends on your needs. Mac still holds ground on creative software. If you are use to Windows or have low on budget the Windows base computers typically cheaper. I personally would be buying Mac laptop but Windows base Desktop.»
Yuliya Skripchenko
Coordinator

«I use the Windows PC for playing games, the Mac for things that require lots of reading (beautiful fonts), the MBP when I have to work at clients and to write on the balcony, the Windows PC to program (My development setup and everything is already there). PCs are cheaper and you can get higher specs for the same price, but Macs have gorgeous design and really high quality screens and don’t seem to crash too much. I’ve become really multiplatform.»
Irune Itoiz
Experienced PHP contractor

«Apple’s products are hip and fun to use, but can be very lacking in basic facilities. Especially in the business world. I guess it depends on your needs. If you’re a person using a lot of multimedia, watching a lot of movies, wants to connect your iPod to the sound system in your car, and so on, Apple products are amazingly easy to use and compatible with each other. However, for technical people, it has a lot of limitations. I’m a software developer working mostly with .NET technology. For starters, I can’t even use a lot of applications I need daily without running some sort of virtualization which enabled me to run Windows on an Apple machine (which is hypocritical in the first place if you ask me). Then there’s pricing. It still baffles me how a perfectly fine laptop from, let’s say, HP or Asus, is twice as cheap as a Macbook variant with the exact same hardware specifications. If a Macbook or iMac breaks (which DOES happen, I’ve seen it too many times), no way in the world you’re going to be able to fix it yourself. You’ll be relying on an often tiring customer service process which may even cost you a lot of money, should your warranty be expired. And last, but not least: bugs, viruses and security holes. Aside from my early computer days in the Windows 3.11 and a bit later the Windows 95 eras when I was little, I’ve yet to get my first virus in Windows. It’s a matter of usage. True, Macs might be EASIER to use than Windows. It depends on the person using it. I’ve fixed too many computer which were infected with spyware, malware and even viruses, simply because its users open every stupid e-mail they get, download and open everything they see and click that ‘Execute’ / ‘Trust’ / ‘OK’ button a little bit too often for comfort. Yes, there are vastly more malicious programs for Windows machines, but that’s only because its creators know that it’s the biggest audience. Should the market share of Mac users ever grow steadily, OSX too will become a more tempting target for virus writers.»
Leroy Gerrits
Managing Director

«As a professional web developer, I have to say Windows. In order to best serve all of our clients I use Windows 7 as my main OS. I am the most flexible developer in our shop and can perform the most tasks. Not to mention my PC is many times more powerful and reliable compared to everyone else’s iMac. When something goes wrong with my PC I can fix it cheaply and quickly, something you can’t really do with a Mac. If you look at it objectively, PCs are light years ahead of Macs. Macs are for fan boys and posers. There is nothing in a Mac that makes them “better at multimedia”. And people, please stop saying Macs don’t get viruses, that is completely inaccurate and you are just making yourself look foolish.»
Chris Putnam
Web Developer

In my opinion this question really only has one answer: consumers. With that being said, what is your favorite? Who do you think is winning? I’d love to hear your comments!

BR,
Kristina
Altabel Group


%d bloggers like this: