Senior SQL/PHP programmer
(architect of database oriented online applications)
Relational databases (SQL),
web applications, web apps,
dynamic websites
I am an architect of database oriented on-line applications
and senior PHP programmer / PHP developer
working with MySQL / MariaDB (SQL), HTML, CSS, JS.
HTML and CSS coding of responsive websites,
accessible for visually impaired, blind and amblyopic (sandblind) users.
Semantic code for good SEO.
Precision, carefulness and various little features for better usability, users' comfort, ergonomy, UX.
I am web application architect and programmer (senior developer).
I am constructor (technical designer) and manufacturer of custom online applications and bespoke dynamic websites made on purchase order.
My job is to make an application, web portal or dynamic website working the best way in all conditions and situations.
I am not graphic designer,
you can not judge my work staticly as a picture in screenshot;
you have to test how it works.
If you want to know if constructor of truck rolling chassis or car platform
(engine, drivetrain (gearbox, …), steering, brakes and suspension)
is good in his work,
you can not judge it from photo of the vehicle's bodywork;
you have to sit into the vehicle and try it during a drive
including hard conditions and special situations.
Custom-made projects
I do not implement 3rd parties' instant content management systems (CMS)
nor another ready-made solutions (like WordPress, Joomla, Drupal, etc.).
I program applications and websites which my clients and their projects need.
… or which projects of clients of my clients need – I have an experience as a subcontractor of web agency, internet agency, marketing / advertising agency, etc.
What I can do,
how I work and why
I work with MySQL (MariaDB), .htaccess, PHP, HTML, CSS and JS.
Why to take me as a programmer and a coder for your project?
Look at list of my websites and web-apps properties and behaviour below:
General structure of a project
I have an experience with projecting of database oriented web apps,
so I can discuss client's requirements,
I can help him to decide between some possibilities and suggest architecture of the whole system from functional point of view.
Which parts/modules of application, which sections/pages of the website, which process and model, etc. we will do in application/website.
I have ability
to simplify what looks to be complicated:
I will find common attributes/characteristics of different parts of the project,
so I design more simple structure of application
meeting all requirements and full functionality.
I have ability
to complicate what looks to be simple:
I will point out possible risks, contraindications/collisions/conflicts or unclearness in requirements.
Although such discovery can be unpleasant, you can believe me, that sooner to find out possible problem means much lesser problem and much less work to solute it.
I can also propose some improvement of the system to do it together with whole system from initial phase of development
or future improvement of the system to keep possibility to do it later.
SQL database
I love to design a structure of database.
I consider possible future improvements of the whole system,
so I design database in such way in order to it will be possible to expand it and to add new functions of the system, new range of sorts of registered data and functionalities of the system/website/application.
I can aticipate some future requirement to improvement of the system sometimes,
some functionality which will have sense for the system,
so then I keep opened door for such improvement
in order to it will be possible to add it later when client will order it.
But I also balance possibility of future improvements of database (universal and robust relational model of database)
with easy and simple implementation of designed database in the moment,
so I respect current requirements and aim of the system to do not overcomplicate the project above real requirements.
Quick acces for user:
Redirection to protocol https and subdomain www
- User is supposed to type text „adamek.cz” only
into address line of his browser. - It is my work to make that server will redirect user to subdomain „www.adamek.cz” automatically.
(by mod-rewrite in my .htaccess file
or by central redirect managed by webhosting provider)- I am such perfectionist, that managing sticking of advertisement onto my car, which has two sectioned tail door,
I placed sign „www.” (including dot) onto left wing,
and sign „adamek.cz” onto right wing,
because this way right wing will work even opened, without left wing. My redirect on the server will make the rest. - I can use advertisement signs adamek.cz without subdomain now, when everyone understand it is web address, so I can have bigger font at the same physical surface.
- I am such perfectionist, that managing sticking of advertisement onto my car, which has two sectioned tail door,
- It is my work to make that server will redirect user from obsolete protocol http to safer protocol https automatically.
(by mod-rewrite in my .htaccess file, including pictures and styles;
or at least by server header redirect in my PHP file) - Such redirect to another protocol and (sub)domain
keeps the rest of the address:
So when typing „adamek.cz/en/web-apps?barvy=noc”
user will get „https://www.adamek.cz/en/web-apps/?barvy=noc”.- It means that user will get exactly the page he requested;
he will not be thrown to the mainpage of the website.
- It means that user will get exactly the page he requested;
Nice URL
I use mod-rewrite to have nice and simple addresses of pages and sections of a website
and as much as it is possible, I do the same also in web portals or online applications.
If it is possible, I use normal ugly parameters in addresses only for undistinct parameters which do not provide another data,
for example for alternative way of view of the same data or of the same module,
like e.g. ordering of data,
another color schema of visual style of interface, etc.
So, I try to use nice addresses of useful data – like e.g.:
„skiarena.cz/krkonose/cerna-hora” (real example of my work),
not like ordinary solution
„skiarena.cz?mountains=krkonose&skiresort=cerna-hora”
This page is draft only,
I edit it when I find time for it.
Various language versions – normal website:
Semantic link to the concrete page
When the website or webapp has more language versions,
I give link to another language version of the same page.
I do not send user to mainpage unnecessarily.
User's comfort, ergonomics, efficiency, good feeling and UX (user's experience) is important for me.
You can see it on this website and at this page.
Since my database model is very robust,
so my website hierarchy is very modular and flexible,
it is also possible that section „ICT” is in Czech version only, without another language version,
but its sub-page about web apps has this English version which you are reading just now.
This page (offer of programming of web apps) can be first level under mainpage in brief English version of this website,
when its Czech version can be second level under mainpage in more detailed Czech version of this website concurrently.
No problem for my database structure of this website.
I use microformat information on links to another language version of current page.
It means better semantics for better SEO (search engine optimization) – robot crawling the web for Google or for another search engine will understand relation between concrete subpages of the website.
It can be useful also in some browsers theoretically, or maybe even practically in future.
Default language of the website
without language code in its URL address
I do not force website keeper to have language code at the URL (page address in address line of browser)
in main language section of his website.
Some engines of websites and CMS (content management systems) force website keeper to have always uggly address like www.adamek.cz/cs with code of selected language („/cs” here);
and only after it the rest of page address.
No this way with me.
I have normal address like www.adamek.cz for main page in Czech,
and www.adamek.cz/en for main page in English.
I have normal address like www.adamek.cz/weby in Czech,
and www.adamek.cz/en/web-apps in English.
I do not stuff language code and one more extra slash into the main (native, default) language of the website.
It would be unnecessary, uggly and inefficient.
This my approach and my solution is usefull especially for websites which have lot of pages in default language
and much fewer pages in another languages
(e.g. like this my website, as you can see).
But it is usable, useful and pleasant also for websites with the same number of pages in all languages (with all subpages translated into another languages).
Various language versions – visual content:
The same base of the address
For web portals, websites, and online application providing visual content like movies or pictures,
where content is exactly the same across language versions of the website (portal),
and only difference is in language of interface,
I use the same beggining of address of the same piece of content (one concrete video or one concrete picture)
with localized suffix for demanded language.
Because the main is the visual content there, not depending on a language of user,
so international users can share the same link
and we can consider various language versions of the same page as really the same page, just with another language of controlling interface around the same content.
An example:
- pez.vioxar.com/id/695-tri-prasatka
- pez.vioxar.com/id/695-tri-prasiatka/sk
The same distinctive numerical id of content as first to identify the content;
then name of it in chosen language and language code.
The same approach is for web apps quite naturally
– when it is my good habit for websites (portals, media catalogues, …),
it is almost only possible (and very good) solution for online applications,
to have the same address of the one module (part of application) for all languages.
Canonisation of alternate addresses with the same content
Change of address – Redirect 301
The best way is to never change an address of a page (concrete page, section, part of website) nor address of website (whole project, domain).
Yes, we all know this. But this advice is not what you are paying a programmer for.
I am not coder only, I am an architect of websites and webapps and I am also a keeper of some websites and webapps,
so I understand, that life and business bring some changes.
Change of website structure without change of pages addresses
Bad request – better then ordinary 404
…and also better then funny 404 with graphic joke
my website (this one, you are here)
web applications, web portals and later websites
+301
No extra address for mobile version
(No extra address like m.adamek.cz for mobile users.
Mobile user uses normal address like www.adamek.cz.)
- One URL (page address) for one page
- Responsive visual style, which will adapt layout of the page to size of screen/window automatically.
Mobile user visits the same URL
as big screen user.
So:
- No problem with Google searching / SEO
- No problem with sharing of page on social networks
- No problem with bookmarks / history
- No problem with link saved in PIM items (calendar, contacts, tasks) or another databases (dbs of clients, solutions, ...)
User will see the page with appropriate visual style (layout) automatically,
he is not dependent on source of link.
Mobile user can share page link to big screen user,
and contrariwise, big screen user can share page link to mobile user.
You can have one link to the page in your synchronised bookmarks, calendar/contact/task item, in e-mail message, etc.
No problem.
It is matter of correct CSS code for visual interpretation of the page,
it is not supposed to have two addresses for one page by device.
User needs extreme zoom? OK!
It also means that website/application will be accessible for weak-eyed users,
who use extreme zoom-in, so they need mobile visual style (layout) of the page although they use big screen.
My solution is absolutely OK with it.
My solution cares how many characters (letters) can fit at one line.
It respects width of window (screen) as well as size of characters (letters).
Size of characters (letters) is user's choice. User decides about his zoom of display.
I do not force him anything.
User changes zoom standard way in his browser, exactly how he is used to do it always and everywhere (Ctrl and mouse scroll; Ctrl and +, Ctrl and -, Ctrl and 0; two fingers on touchpad; zoom buttons/cradle on keyboard; menu in web browser; settings in whole operation system; …)
and a webpage made by me will be shown the best possible way automatically,
with the best suitable layout.
Without any extra address, without any extra user' actions.
You can see more about this topic below.
(… to be continued)
References