Hi there, I'm Johnny.
I'm a friendly creative person focused on web design & development.
I like to make & experience things that look, function, and feel good.
My 2 hemispheres.
Creative Output
I've been artistic in one way or another for my entire life - creating and sharing with others who are interested.
Inner Workings
I love digging in, taking things apart - getting my hands dirty to see how things work, and to make things work.
I've got a few attributes that I think define me, and that I'm proud of.
- I'm into good people, regardless of belief or opinion - I consider myself good people too.
- I'm confident in my problem solving, determination, and attention to detail.
- I listen to and respect what others have to say, and I'm not afraid to kindly voice my own opinion.
- I consider myself fairly well spoken and able to communicate, convey, and share ideas & information with others.
- I'm a well-rounded, forever evolving person - I like to discover, learn, and try new things and new ideas. I welcome suggestions and critiques.
- I like to be happy and love to have a good laugh - I'm instantly drawn to others who dig that too.
My design & graphics abilities.
- I have real-world / hand and pen artistic abilities. I'm fully capable of freehand sketching and rendering.
- I understand image file types (jpg, png, svg, etc.) - the differences between them, when to use them, how to use them.
- I'm competent with colors and the concepts of color. I work comfortably with common color syntaxes (hex, cmyk, rgb, hsl).
- I consider myself good at layout - working with shapes, graphics, typography, color, negative space, etc.
- My application layouts are always considerate of screen size responsiveness, good user experience, readability, and organization - without sacrificing good design.
- I am inspired by and learn from other's designs and artwork. I like to keep up on trends and new techniques that are interesting and unique.
Working with graphics.
Raster Images
I can work with pixel based images - touch-up, isolation, blending, color-correction, drawing / brushing, lighting, shading, etc.
Vector Images
I understand paths, shapes, and bezier curves. I often markup svg files and directly manipulate attributes with JS and CSS.
Animations
I mostly implement JS and CSS transitions, keyframes, and easing for more control, user interactivity, and layout responsiveness.
My graphics and design applications.
Adobe Photoshop
I have a solid working knowledge of Photoshop - layers, masks, exporting & importing file types, etc.
Adobe Illustrator
I have a solid working knowledge of Illustrator - vectors, layers, masks, exporting & importing file types, etc.
My coding abilities.
- I am comfortable in both client-side and server-side languages.
- I embrace the fact that languages, libraries, and frameworks are constantly changing, evolving, and sometimes replaced or depreciated.
I feel the same about workflow, tools, and extensions as well. - I'm not afraid to dive into documentation, I'm not ashamed to say that Google search is one of my often used tools.
- I am inspired by and learn from other's code examples, projects, and problem solutions.
- I like to stay organized with my directory & file structures. I comment the more complex or less obvious code as often as I can.
My general coding skill set.
HTML
I work extensively with HTML. I understand element behaviors, attributes, etc. to construct responsive layouts.
CSS
I have a solid understanding of CSS - relationships, specificity, custom properties, flex-box, media queries, etc. I work with SCSS to organize, compile, and minify.
Javascript
I work with core JS concepts - functions, DOM nodes, arrays, objects, JSON data, etc. I am actively learning and experimenting with advanced concepts and libraries.
php
I understand core php concepts and working with the server file system & database, includes, functions, arrays, objects, etc.
mySql
I can perform basic CRUD operations in an sql environment. I have a good mindset to build basic relational data structures.
The libraries, APIs, frameworks, etc. that I currently work with most often.
Wordpress
I work with Wordpress and some major plugins extensively - working with hooks, filters, custom themes, plugin APIs, admin UI, WP-CLI etc.
jQuery
Although I am personally moving away from jQuery in favor of vanilla JS, it is still in use by many CMS systems such as Wordpress.
GSAP
This JS animation library is a personal favorite that helps me be creative when animating timelines, transitions, scroll animations, etc.
Bootstrap CSS
I am comfortable with the flex-box grid system and responsive classes. I can efficiently design HTML layouts that are responsive from using a few classes.
WooCommerce
I work with this eCommerce system often - setting up payment & shipping methods, and even working with the API to add custom functionality.
Advanced Content Fields
I use ACF in all of my Wordpress projects to quickly create UI's in the admin to collect custom data, and then retrieve it for use on the front end.
Mailgun
I remove the burden on my servers and rely on Mailgun to send emails for my applications to ensure proper formatting and reliable inbox delivery.
Font Awesome
The clean design of these icons are invaluable when a project needs graphical interest, but time or budget does not allow for custom illustrations.
My coding workflow & tools.
VSCode
My IDE is VSCode and it's amazing. It's kind of an industry standard and it's not hard to see why.
Node Package Manager
I use Node Package Manager to import compilers, modules, etc. so my projects and workflow environments can be easily replicated.
Webpack
I use Webpack to bundle, compile, and debug all of my source JS and CSS for both development and production environments.
Git
I use Git in a very limited way. I am currently not experienced with Git in a collaborative way, but I'm excited to do so soon.
GitHub
I use GitHub in a basic way as my repository for all of my projects, including using a few features such as actions.
Chrome DevTools
During development, i prefer using Chrome - I am comfortable with it's dev tools for my testing, debugging, and quick design ideas.
Linux / Ubuntu
When I deploy web applications, I always use Linux based servers. I have a basic understanding of the OS and CLI commands.
My experience & history.
For over a decade, I have been freelancing for small businesses and individuals - offering graphic design, web design & development, hosting & maintenance, and general tech support & advice for my clients.
Industry related experience
I've worked with the Adobe Creative Suite / Creative Cloud for over 18 years.
In the beginning, I worked with Adobe Flash, Adobe AIR, ActonScript 2 & 3, and I survived their demise.
At varying levels, I've been working with HTML, CSS, Javascript, php and mySQL databases for approximately 10 years.
I've been creating small to medium Javascript / AJAX applications for my website projects for over 7 years.
I've been working with WordPress and various plugin and APIs for approximately 6 years.
I've been working in VSCode and various extensions & packages, and with Git for approximately 2 years.
A bit of related education
College for Creative Studies
In 1995, I was accepted and attended College for Creative Studies for a single year where I briefly studied Industrial Design (Product, Furniture, Interior, and Automotive design), as well as color theory, art history, and creative writing.
Birmingham Bloomfield Art Association
Over the course of a decade or so, I attended various classes at the Birmingham Bloomfield Art Association including Acrylic Painting, Pencil, Pastel, Ceramics, and Automotive Design.
Unofficial Courses & Self Education
All of my coding education has been achieved from countless online courses, community blogs, documentation diving, peer to peer communications, and experimentation.
Not-so industry related life experience (that may be worth mentioning)
I've excelled in the Auto Body Industry for many years as both a Paint and Body Technician.
- I-CAR certified in paint matching and welding.
- Participated in numerous classic restorations, some of which have received prestigious awards.
- Certified and capable of repairing heavy body damage - major structure replacement, frame straightening, etc.
- Considered to be a high quality craftsman by my peers, shop owners, and customers.
I am a musician - writing, composing, and digital recording & editing.
- Collaborated with other musicians with a rigid 3 times per week practice schedule for over 10 years.
- Helped organize and create design for advertising, merchandising, and album artwork.
- Many live performances at small and large venues such as The Magic Bag, Emerald Theater, Royal Oak Music Theater, St. Andrews hall, etc.
- Released 4 full-length all original albums on a physical media format.
- Proficient in digital recording, ProTools DAW, virtual instruments, plugins, mixing and mastering.
I have a strong curiosity for tech - I have a solid understanding of hardware & software.
- Decent understanding of the components and specs - processor, memory, storage, GPU, internal I/O, etc.
- Decent understanding of monitor tech - resolution, refresh-rate, panel types, I/O, etc.
- Capable figuring out user interfaces, operating systems, applications, drivers, I/O routing, etc.
- I've always built all of my personal desktop PCs and occasionally helped others. It's kind of satisfying to me.
What do I see as my next steps?
My life journey is both exciting and mysterious - but my constants are to always be creative, kind, and to discover, learn, and evolve with the universe around me.
I'll be focusing on Javascript.
I'm in the midst of educating myself and experimenting with advanced JS concepts, libraries, and frameworks.
In the near future, I'll be able to efficiently build and / or contribute to rich, intuitive, scalable, organized, and creative applications - limited only by imaginations.
Here's where I'm digging in.
Node.js
React
Next.js
MongoDB
Docker
Webpack
Electron
GSAP