For database driven websites (web apps,) typically the biggest bottleneck is the database. So be sure your database is optimized. With SQL based databases, that starts with proper table design and smart indexing. That will handle 98% of websites performance needs.
How about image optimization?
Back when I started building websites, in the day of the dinosaurs (1990’s)we used to be concerned about image size, and how ‘big’ the webpages were in terms of kilobytes … but we live in the YouTube generation now, with high speed mobile internet, HD and 4k video being watched on smartphones. That means that a data limitation is typically NOT the bottleneck anymore … it’s processing (of code) on both the client and server.
If you are reading this, you probably want to learn modern web design and development, or you may already know how to build websites, but you want to become really confident in your web skills … just like all my students who took my unique web design and programming training course.
After you take my course, you will be amazed at how much you know! Below, you will find a few student quotes, screen captured from YouTube comments.
Evil, evil, evil Wix!! That is the cry of many web designers. Will Wix kill web design? Short answer: nope.
Why won’t Wix just kill web design?
Simple answer: Wix doesn’t do it all, and frankly, professional web designers should just embrace Wix as an optional tool. Yes, some small business will opt for Wix (or some other web builder,) but many will realize sooner or later, that it does have its’ limits. When small business owners figure this out, in comes the modern web designer of 2018 and beyond!
There has always been an evolution in the software field. What I have seen over and over again in the last 23 years, is the promise of amazing leaps forward, where we ONLY end up with gradual improvement.
These days we can produce web apps and websites in a fraction of the time it used to take us, but the work for well trained web developers is still there, because the bar for modern websites is just simply higher today. The tools, push the bar up. Which is good!
So yes, some older practices/jobs go, but they are just replaced with new specializations in the field. To point, Wix. Yes, a non developer / amateur can put out a basic site with Wix, but they will often lack good UI, and especially UX skills, that make sites successful.
… Wix cannot account for good UX. Yes, Wix can make a site look good. But any experienced designer knows that UX is far, far more important than UI.
For me, Wix is just another tool of the trade that smart web designers embrace.
If you want to learn web design and programming in record time, take my IWD course! It will make working with Wix, WordPress and vanilla web design, as easy as slicing an apple pie.
But when it comes to the development of high demand (in terms of performance) mobile apps, using native languages like Swift for iOS and Java for Android is still the way to go. This might change with Googles Flutter framework.
Someone asked me, if I had to pick the most important things you can do to improve your programming, what would it be?
Have a consistent self describing naming convention. This saves you yuuge time because you will make less mistakes and be able to code more quickly.
Keep your code fine-grained. This means you write functions and methods that do only 1 thing … Not five. This will keep your code easy to understand, to debug and expand.
The first thing to do when starting a new project, is to see what others have done. Perhaps there will be libraries to leverage, perhaps even entire open-source software you can use as a starting point. This is yuuge!
Given the big moves in the cryptocurrencies this year (Bitcoin, Ethereum, LiteCoin etc,) I figured there must some programmer / developer jobs in blockchain! So I checked out a job site to see what was out there, and what skills companies involved with blockchain are looking for.
In terms of programming languages, it’s not just C++. There is a demand for a whole slew of languages including:
… And others. So when looking for blockchain related jobs, knowing the core of programming, regardless of the language, is the key. This will make you a much more valuable asset if you know your fundamentals well, so you can jump in and learn whichever language that is needed to do the job.
Frameworks and other support technology
Besides the programming languages, when working with crytpocurrency based business, you will likely be needing to know some of the following:
My advice is to be sure you have a firm understanding of the foundations of programming, once you have that, the rest comes easy. Then you can learn about blockchain and supporting tech depending on the job you are interested in.
The key is to get past the hurdle of learning the foundational concepts and techniques in programming.
Now that coding is widely recognised as a core skillset that students should learn, schools around the world are looking for code curriculums.
Too many code courses!
There are plenty of code courses out there, but unfortunately, the vast majority are created by coders who have no teaching skill, or experience. For adult students, you can get away with that, but when it comes to middle school and high school students, you need a set of courses created by experienced teachers.
What makes a great coding course for middle school and high school students?
It comes down to a few things:
The lessons have to be video based.
The video lessons have to be a reasonable length, otherwise students will quickly get bored.
A code teaching platform should provide instant feedback, and other incentives to engage students.
Code courses should breakdown concepts into small chunks that students can learn.
A teaching platform should provide flexible lesson plans and other materials teachers need.
Most of all, the courses have to fun!
Why use web design to teach code?
I am now going into my 7th year of working with schools to teach code, and I’ve seen great success with coding courses based on the coding languages of web design:
The web design languages teach 3 different TYPES of computers languages: markup, styling and programming.
Web Design can be taught on any type of computer. Compare this (for example,) to Apple’s Swift, you need to have expensive Apple hardware. Whereas with web design, you can teach it on Chromebooks, Windows, Macs, Linux computers and tablets!
Free web design code editors – so many to choose from! In fact, you can teach web design just using a simple text editor … every computer has one!
Web design is visual …. students see their work come alive on screen.
Web design is real! Watch student engagement skyrocket when they see their code do real things.
For schools and teachers who want to give their students an amazing coding experience, there is no better way than using the web design languages.
StudioWeb provides a fun interactive training platform and curriculum designed with the help of many teachers and their students across the US, Canada and places around the world.
I’ve been using video to send bug reports to my developers for years. That said, I’ve been doing it the hard way with screen casting software, and manual uploads to cloud storage, to share my videos with the developers. With BugReplay, it takes care of all that for you … and it’s super easy!
What is BugReplay?
BugReplay is a browser plugin that makes it easy to record bugs, and send video reports to your developers. It is a huge time saver for web app developers.
Here are some of the highlights:
Facilitates communication between devs and non-devs; and between companies and their end-users
Available as a Chrome extension and Firefox add-on- very simply browser extension install and quick setup
Network requests and responses are synced with the screencast
WebSocket data is displayed alongside HTTP requests
All the environmental data is there so you don’t have to ask the basic questions to get the information you need (e.g. what’s your browser, operating system, geographic location, system memory, are cookies enabled, etc, etc)
Unlimited screenshots (and you can add helpful notes to them)
Integrates with Slack, GitHub, JIRA
You can create a shareable URL for the video bug report and share with anyone (they don’t have to have a BugReplay account)
With Feedback By BugReplay, our consumer-facing product, you can also send requests to your customers/end-users, and they can very easily submit video bug reports without creating an account
Unlimited users (we don’t charge per team members)
In 2018 C++ is still a very viable programming language to learn. In fact, many programming languages are worth learning in 2018:
Java for web apps or Java for Andriod
… And others. Although, the above would be my top picks.
The key to choosing a language comes down to two things: market viability of the programming language and what KIND of programming you want to do.
Kinds of Programming
You have many choices in terms of marketable programming languages … there is plenty of work for the languages listed above. Each language though, means a different kind of programming, and that often means a different type of person would enjoy programming language ‘A’ vs programming language ‘B’.
For example, C++ programming is a low level language, and that means you will be writing code that requires lots of management by the programmer of little details. It reminds me more of math.
Choosing your language
I could write 10 pages on this, and still scratch the surface. Regardless, the key is to explore a little on your part, check out which TYPE of jobs you get with C++, and which type of jobs you get with Python … and the other languages. Again, different programming languages mean a different type of job.
The good news is that you don’t need to worry about your choice too much because you can always switch languages later. It’s easy to switch over, because all the above languages share about 90-95% of the same principles and concepts. The code looks different, but learning the code is the easy part.
Suggested first programming languages?