Author Archives: Mark Reyes

About Mark Reyes

Web Developer based out of Southern California.

Review of WordPress In Easy Steps

Introduction

WordPress in easy steps by Darryl Bartlett, is a book which saved me when I was tasked with maintaining my company’s WordPress website. At last pass, the website was officially on PHP 7. Whereas my last freelance project used PHP 4.

Yikes 😶 .

I needed an insurance policy and I found this book to be a saving grace in helping me survive the modern day WordPress ecosystem.

Summary

The contents of this book are broken down into 11 condensed topics including: “Introduction to WordPress”, “Dashboard & Users”, “Appearance & Themes”, “Creating Content”,”Plugins”, “Creating an Online Store”, “Settings & Tools”, “SEO & Social Media”, “User Interaction”, “Tips & Tricks” and “Advanced WordPress”.

All chapters are condensed, straight to the point and are thoughtfully written. It’s not a complex read at all and each topic is fully supported with clear illustrations.

What’s Important

In order to thrive, you first must survive. And in my opinion out of all of the topics discussed you’ll want to focus on these 5 chapters first:

Dashboard & Users

You’re going to need to know the sidebar and the dashboard as a whole once logged in. The advice here breaks down the out of box WordPress sidebar and its available menu options. Find your way through the dashboard quickly and learn to add users to give them specific roles. Heads up, the more involved your WordPress development is (namely adding more plugins), the probability of your sidebar and dashboard becoming bloated would be high.

Appearance & Themes

Augmenting the look of your website will mean hitting the installed theme of your WordPress site. Here you’ll get the basics of what a theme is, how to install, upload and edit them.

Creating Content

Part of the grunt work will simply be adding or editing your site content. In this chapter, you’ll learn to distinguish between posts and pages and learn how to add text, images, video and audio.

Plugins

Most complex problems you encounter can most likely be solved in two ways: you code your way into solving the issue or you download a plugin from the open source community. Learn how to find, install, update and even edit a plugin. In my opinion, plugins are both a gift and a curse but you’re going to have to understand them, regardless. That said, I do not recommend you edit a plugin ever. That may break any licensing terms or cause undesirable side effects. Put that responsibility on the developer that built that plugin. Write a support ticket or contact them directly.

Settings & Tools

Learn the underpinnings of your WordPress ecosystem. Toggle each of the core settings and observe what they do. As important as it is to create a cool experience on the front-end, you’ll need to know what buttons to push behind the scenes to keep the entire house in order.

Conclusion

I strongly believe you could read this entire book in one focused hour. This book is a great utility to keep in arms reach when you need to quickly learn the outs of your WordPress environment. This isn’t a book to teach you WordPress on an academic level. It’s a book designed to keep the plane that’s already flying to still be at altitude.

If you’re looking to be immersed in the technical how-tos I’d recommend starting off with the source itself, WordPress.org. To add a bit of flavor, opinion and friendly guidance, follow Chris Coyier and CSS Tricks.



This post may contain affiliate links. Should you make a purchase by clicking on any of the links, I may earn a commission at no extra cost to you. Read my full affiliate disclosure here.

Review of Digital Minimalism

Introduction

Digital Minimalism by Cal Newport is an important book that I’ve picked up in the last decade. It’s a pretty bold statement to make but for me personally, I was in the market for something which could help me out with some mental stress that I’d been carrying over my head. At the core of it all, the root cause is my iPhone. It’s been a great tool to have but it’s also come at a cost. And those tiny apps which sit inside of that expensive piece of machinery has caused me a ton of mental headaches, social anxiety and has misled me many times over with misinformation and half baked conversations.

Frankly, if I could summarize it, I felt sad. So I turned to this book in hopes of finding clarity in this gruesome situation and I wanted to share some of the things I thought were worth mentioning.

Summary

In short, Cal breaks down this form of anxiety from the very beginning. You should know this by now. 2004 and The Facebook takes hold. Then it’s 2007, roughly a year out from the Great Recession and Steve Jobs designs what Apple deemed to be the best iPod yet. Harnessing both the telephone and music player capabilities into one device, the iPhone was never originally presented as segue into mobile apps or the app store as one would assume. 

Through a series of short chapters, a total of 7, he takes you on this well explained journey: “A Lopsided Arms Race”, “Digital Minimalism”, “The Digital Declutter”, “Spend Time Alone”, “Don’t Click ‘Like'”, “Reclaim Leisure”, and “Join the Attention Resistance”.

What’s Important

Cal defines the meaning of Digital Minimalism quickly as,


“A philosophy of technology use in which you focus your online time on a small number of carefully selected and optimized activities that strongly support things you value, and then happily miss out on everything else.”

Addiction – not only relates to alcohol and drugs but is thoroughly explained in relation to our digital consumption too. Two forces in particular are explained: intermittent positive reinforcement and the drive for social approval. It’s a pretty nasty explanation on how the Like button impacts us.

“A Lopsided Arms Race” is worth reading over and over.

Digital Declutter – in summary this is essentially a proposal of blunt force trauma to your current digital usage. It’s a cold turkey technique of 30 days where he emphasizes that “aggressive action is needed to fundamentally transform your relationship with technology.”

To me, every process and thought explained in this book are equally important but “Join the Attention Resistance” has to be what Trevor Hoffman was to the San Diego Padres. It’s the closer and the final chapter in giving actionable advice to address this problem.

  • Practice: Delete Social Media From Your Phone
  • Practice: Turn Your Devices Into Single-Purpose Computers
  • Practice: Use Social Media Like a Professional
  • Practice: Embrace Slow Media
  • Practice: Dumb Down Your SmartPhone

Conclusion

For me, what didn’t work was digital declutter, so I compromised. I tried a cold turkey schedule every fourth week of the month. That worked once and my remaining attempts failed. So I tinkered and ended up using small wins which for me just add up. I removed Facebook and Twitter for good from my phone. I need a laptop when I dip into those worlds. 

All notifications for social media are turned off. And it’s really changed the way I frame other apps when I see them come to market. Long story short, I’m not on Tik Tok. It’s one of those scenarios where I continue to say to myself that if I never had it in the first place, I never really missed it.

I don’t look down on my past usage but I am moderately more assertive of what I’m doing when I’m inside of that Instagram game, a Messenger Chat or scrolling through a feed. And for now that’s step one which was definitely better than yesterday, when there were no steps at all.



This post may contain affiliate links. Should you make a purchase by clicking on any of the links, I may earn a commission at no extra cost to you. Read my full affiliate disclosure here.

Angular 9 Task App with NgRx & Drag Drop

TLDR – A todo/task list built with Angular 9. This app utilizes Angular Material’s drag and drop out of box and with the help of NgRx, the UI can maintain its previous state on page refresh.


Features

  • Provide sorting by table columns and searching.
  • Add sorting by multiple columns and persist the sorting on refresh.
  • Add the ability to drag and drop columns to reorder them using the native Angular cdk drag and drop.
  • Add ability to manually resize the columns by dragging with the mouse.
  • Use Angular, RxJs and NgRx for state management.

Demo

Conclusions

Easy

Filtering a list of tasks leveraging a search bar was straightforward enough, thankfully. Check out the pipe and how that ties back into the ngModel on the input element for further details. My implementation is for the most part 1:1 from this Stackblitz demo.

Medium

Imagine an excel spreadsheet in which you can resize the cells (see the purple drag handles on the To Do column). It’s a similar ask here.

At the time of this writing, Angular Material does not fully support a way to resize elements. It was asked in 2019 but I didn’t find anything from the current documentation. I found this ngx-cdk-drag-resize demo to be a good starting path leveraging Angular’s ElementRef API out of box.

The other gotcha was sorting by order. AngularJS did it but Angular’s core argument for not including that feature in their current API is simply for performance. Your options are limited to creating your own custom pipe or having your component take on that responsibility. In my case, the dynamicSort() function on my home page component is what I used to sort order attributes in ascending order.

Hard

Saving the order of drag and drop. Saving the order on drag and drop and distinguishing between to do and done. Saving the order on drag and drop, distinguishing between to do and done, refresh the page and ensuring the previous state was maintained.

That. Was. Hard.

My initial thought was to save via localStorage but having localStorage fly on its own was brittle and often caused inconsistencies when ad hoc testing. I needed a strict approach that could thoughtfully manage the user interaction, namely @ngrx/store because at its core everything is immutable. Acknowledging that very rule was hard to embrace but in my opinion it’s the way to go when creating insanely stable Angular web apps.

In my case, I used a combination of reducers, actions and effects.

It took me the better of two weeks just to understand NgRx on an elementary level so here’s my tip on how to get through these dense concepts. My suggestion assumes you’ve used Angular on a consistent basis and you’re looking to add on top of your existing knowledge of that.

If you use Angular regularly then you’re familiar with the green action below called Components. You might even be communicating with a backend system which means the other green action, Services and that blue document, APIs are also part of your web app flow. An abundance of Angular tutorials are demonstrated with just these ingredients alone. So if you’re looking to spice it up with NgRx, add the following steps below.

Step 1

Review these additional actions and employ them where needed: Store, Selectors, Reducers, Actions and Effects.

Step 2

Follow the arrows. At all times, follow the arrows.

SOURCE: Adding NgRx to Your Existing Applications

Please feel free to fork this into your own creation.

And remember, when all else fails…StackOverflow. 😉

Aloha. 🤙🏾

Additional Resources