While the variety of computer monitor shapes and sizes steadily expands Responsive Web Design (RWD) is rather a matter of survival. It's hardly someone was thinking about RWD when the first specs on HTML and CSS where written. However now a lot of work done to provide a native way of achieving RWD, to bring fast and consistent solutions.
This article presents hands-on examples of generic RWD tasks implemented with such W3C modules as CSS Flexible Box, CSS Grid Layout, CSS Regions, CSS Multi-column Layout. It also demonstrates use of "position sticky", srcset attribute and fallbacks on webP.
Eventually I found a tool meeting all requirements I have.
Reasonably statistic analyses belong to CMS ACP reports. So, CMS vendors tend to include some into their products. However, they often make statistical data collection and analysis a part of CMS. It usually gains some primitive reports and affects application performance. I believe any sound statistic analysis can be delivered only by a dedicated specialized application. Meantime CMS can be used to represent the reports prepared by that application. Have you ever fancied displaying Google Analytics Reports in your CMS?
Not so long ago Microsoft announced a new language, targeting on front-end developers. Everybody's first reaction was like "Why on Earth?!" Is it just Microsoft darting back to Google? Is that a trick to promote their Visual Studio?
Recently I've laid my hands on a copy of "PHP Application Development with NetBeans" by M A Hossain Tonu (www.PacktPub.com). It appeared to be a really nice reading. One of those where it's hard to put the book down until the end. It must be valuable as for beginners as for experienced NetBeans users. I, personally, have been using NetBeans for about 4 years and still find in the book the features I wasn't aware about or unfairly ignored for so long. Yeah, NetBeans is like an iceberg. At the first glance it looks quite simple, but the deeper you are, the more layers you discover. After years of usage you still can run into an overlooked tool which remarkably boosts your coding productivity. In order to avoid the case "Why didn't I use it for all this time?!", I would even call it as a must-read book for anybody working with NetBeans. Besides, covering the common facilities of NetBeas the books provides comprehensive input regarding automated-testing flow, version control integrated tools on Git example, PHPDoc practices and API-documentation generation.
Making design responsive means not only certain representations on different screens, but also particular behavior on different devices. Usually on mobile devices mouse is not available, keyboard with navigation keys is out of reach. So we are short of controls to provide a useful navigation.
Let’s take image viewer. User taps a thumbnail and gets an overlay with the image. We don’t have much screen space on the smartphone. So the image goes fullscreen. Well, how is the user supposed to close the overlay? On desktop we would place close button on the frame. Besides, we would use Esc and any click outside the frame. Here on mobile we just have this fullscreen image and no keyboard. If we place “close” button on the image, it will hide a part of image. Let’s add to the list “previous” and “next” buttons, all big enough to tap easily by a finger. So what are we to do?
Project X at Crytek GmbH. No details till the project is launched (NDA's signed)
Age of Web 2.0
Size of my contribution: information architecture analyze on early stages, technical design (UML, documentation), PHP (on Zend Framework) and JS (on YUI3) project component development.
POZZZY is social system to aggregate entertainment, which has features of social news system (Digg.com), collective blog (Slashdot.org) and social bookmark system (del.icio.us). Pozzzy is an OpenID server/consumer, supports MicroID, Pavatar, hCard, XFN and FOAF.
Size of my contribution: idea, projection, programming
Age of XML Sapiens
XML Sapiens is an XML-based language used for describing of web-application data, presentation and functionality composition.
XML Sapiens allows to prepare a set of data structure declarations, content field type set, functionality and use all of them within site designing. Reusing of those components reduces costs of web-development and lets to avoid low-level programming.
Size of my contribution: idea, projection, specification developing
Site Sapiens is an enterprise content management system including web content management system (WCMS), web-application development environment, web-integration platform.
Web 2.0 Technological Foundation: AJAX, RIA, SOA
Leading program methodologies: AOSD/AOP, XML Sapiens, TDD, Replicating DB Architecture
Site Sapiens has been chosen as CMS for projects of Russia, Belarus, Ukraine markets such companies as The Coca Cola Company, Renault, Elle, Mars.
Size of my contribution: idea, projection, programming (everyting except AJAX-framework and XML Sapiens processor program code. Since version Site Sapiens 3.1 I left the project and it is deleloping without me).
SAPID CMF is a framework for rapid creation of content-based application of Web 2.0 generation. SAPID CMF allows to organize effectively process of new application development, data, structures, representation and functionality
components reusing, rich user interfaces creation.
Size of my contribution: idea, projection, programming
SAPID CMS - is a freeware tool for site creation and management. SAPID is distinguished through the comfortable Ajax-based site structure management interface and high flexibility of design, content and functionality integration.
SAPID does not need DB (file-flat CMS). SAPID is inline CMS. It means that site documents are editable in a way "what you see is what you get", a document in delivery phase looks same as in administrative phase.
Size of my contribution: idea, my share of projection and developing ~ 50%, promotion, cretion of sapid-club.com, special editions SAPID SHOP, SAPID Gallery, SAPID Personal Site).
Internet Auction Web Services API
The solution contains class library, which realize web services on server side, load balancing engine, samples of interaction with web services on client side, documentation (Web Services API Guide, 60 pages) and presentation.
Size of my contribution: library programming, documenting
Age of MySITE
MySITE - is the first full-function information space control system in Belarusian Internet. MySITE allows web-systems construction, management, scaling and change. MySITE does not require special knowledge for administration area user interface management. The system includes additional modules for management of a electronic catalogue, reports on attendance, advertising management, forums system management, interrogations and posting management.
Size of my contribution: idea, projection, programming
In year 2000 STC ATLAS (at that time a part of SoftLine Group) developed the following projects under my supervision: a web-site of Central commission of elections and referenda of the Republic of Belarus -"Elections 2000";Informational analytical server of Administrative office of the President of the Republic of Belarus.
In summer 2001 I had been offered to develop an electronic publications system MyPRESS.
It is a universal program complex which includes all basic functions of content control systems and allows creating and leading periodic WEB based editions. Sites management system MySITE has been created on MyPRESS basis in autumn.
The plugin turns your markup into a slide-show with a set of fancy configurable transition effects. The plugin tries to render the effects with CSS3 transitions. However if the browser does not support CSS3, the same effects will be achieved by JS.
Every available effect is encapsulated into a separate module. One can remove redundant effect modules from jquery.t-effects and leave the only code responding to his requirements.
That is a jquery plugin, which emulates HTML5 Form behavior on old browsers.The plugin also allows to customize form submission validation tooltips and field validation callbacks (e.g. via XMLHttpRequest).
Currently the plugins serves following input types: text, email, url, number, tel and following input properties: novalidate, placeholder, required, autofocus, pattern, min, max
Either you likely provide already sharing buttons to you blog posts or not, you may be interested in this light-weight solution. Why? Because it’s fancy, it takes very little space on your page and it is so easy to attach.
Have you ever noticed Google+ has an amazing feature called Google Feedback. You click on feedback highlight an area of the site page and getting screenshot with your marking on it sent to the Google support team. If you wonder of having this tool on your own, just take my code and adapt for your requirements.
The Web site advertising business became much more profitable to Web site owners, and more effective for advertisers, when Web advertising agencies invested in contextual advertising techniques, like those used by AdSense and IntelliTXT. Instead of display almost randomly chosen ads, context advertising techniques show ads that are picked automatically by the ad servers to match the topics of the content displayed in each page.
This package implements a solution that can be used to display contextual advertising using PHP. It can scan the text in the current page and submit it to the server. In response to the request, contextual advertising may be displayed in a pop-up window.
New features of Thesaurus 3.0
Retrieving data though Cross-Domain Request. That allows you to have the same controller for instances of Thesaurus on different domains.
Instancing of tooltips. When the term occures within the tooltip text it will cause another tooltip when hovering by mouse.
Effects. Different transition effects for tooltip appearance are available.
BlogSlideShow is a jQuery plugin enhancesing your blog pages with image viewer, which provides fancy transition effects.
BlogSlideShow comprises my library tEffects, which tries to apply CSS3 transitions to achieve the effects. If the browser does not support CSS3, it visualizes the effects using JS. So the plugin is running effects as good as the browser can afford.
As for my open source contributions, some were pretty popular once Sapid CMS, AOP library for PHP, few plugins for jQuery.
Numerous of my works were published in specialized medias, I have been a speaker
at developer conferences (e.g. PHP Conf),
and published articles in magazines such as PHP Architect and PHP Magazine International
Software architecture, domain driven design
Continuous Integration And Deployment
Test-driven development / BDD
An accomplished web developer specializing in Object-Oriented Design and Analysis with extensive experience in the full life cycle of the software development process. 20 years experience as a programmer.
Information Architecture: including metadata standards, classification schemes, knowledge of representation
W3C Standards: knowledge of and practical ability to select and deploy technologies like XHTML,
HTML5, CSS 2-3, XML, XSL, SVG, RSS, ATOM and other as they emerge.
Initiated and created XML Sapiens development conception, worked out a new corporate technological process within the company. Wrote and published XML Sapiens markup language specification. Created Site Sapiens web development environment. Took part in development of more than half of hundred web-sites. Reading papers within subject conferences, forums, congresses. Publishing articles.
2007 - initiated and developed POZZZY. It is a social system to aggregate entertainment, which has features of social news system (Digg.com), collective blog (Slashdot.org) and social bookmark system (del.icio.us). (See more)
2006 - developed Site Sapiens 3.0 ECMP, which contains business applications – web-services, which cover complete set of content life-cycle management tasks. All user interfaces are AJAX-based and use dynamic trees, grids, explorers. There were used technologies such as AOSD, XML Sapiens 2.0, SOAP, TDD and others. (See more)
2005 - PHP Programming Innovation Award October 2005 Winner of PHP Classes (see more)
2005 - created popular Open Source CMS SAPID (sapid.sf.net) and respective community (www.sapid-club.com)
2004 - wrote the specification of language XML Sapiens for CMS developers
2003 - created enterprise information area management platform Site Sapiens
since 2003 - Senior web developer at Red Graphic Systems company
Developed several tens of web-project including some Intranet/Internet portals of Administrative office of the President of the Republic of Belarus. Suggested, projected and developed the first CMS in Belarus - MySite. Read papers within subject conferences, forums, congresses.
2002 - deputy head of Stc. Atlas studio
2001 created site management system MySITE
2001- 2001 - head of MySITE and MyPRESS projects Stc. Atlas web-development studio
2001 created electronic publications system MyPRESS
2000 committee-man of the First Belorussian Internet Festival (www.bif.by)
2000 – 2001 - head of web-development InternetService studio
My duties included development of small business applications based on Clarion RDBMS. Created an interactive GUI extension (mouse control, pseudo-graphic) for Clarion using C /Assembler and applied to develop. Founded an electronic magazine (TXT format and code sources) for Belorussian open source developers (I didn’t found sponsors, so there were published only 2 issues of the magazine).
1993 – 1994 - programmer of BelarusRezinoTechnika joint-stock company (http://www.aobrt.by/en/)
1989, 90 – twice winner of All-Union contest for programming innovations and Soviet Union schoolboy conference member. Winner of the All-Union Lenin’s grant.
Lecture at the international congress PHPconf’2005
Lectures at Internet-forums by’99, by’00, by’01, by’02, by’03, by’04
Lecture at the international e-commerce congress etp''2001
Lecturer in the Institute of privatization and management (www.ipm.by)
Participation into broadcasts programs on the Belorussian TV and national radio as an Internet-technology expert
Technical consultant of Belarus Unified Democratic Forces