<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Prikesh Savla</title>
    <description>The latest articles on Forem by Prikesh Savla (@prikeshsavla).</description>
    <link>https://forem.com/prikeshsavla</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F209604%2F8566afd0-b2ae-43b4-9a80-ec5e6bf4c424.jpeg</url>
      <title>Forem: Prikesh Savla</title>
      <link>https://forem.com/prikeshsavla</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/prikeshsavla"/>
    <language>en</language>
    <item>
      <title>5 books a Frontend Developer must read</title>
      <dc:creator>Prikesh Savla</dc:creator>
      <pubDate>Thu, 31 Mar 2022 18:12:49 +0000</pubDate>
      <link>https://forem.com/prikeshsavla/5-books-a-frontend-developer-must-read-19bj</link>
      <guid>https://forem.com/prikeshsavla/5-books-a-frontend-developer-must-read-19bj</guid>
      <description>&lt;p&gt;Evolve yourself to bring life to a design with rich user experiences after reading these books.&lt;/p&gt;

&lt;p&gt;As a frontend developer in this space of technologies, you have to take steps to set yourself apart. Languages and frameworks come and go, what stays is your experience and ideas.&lt;br&gt;
Knowledge is a developer's strength, with which you can stay on top of your game. So it becomes necessary to upskill yourself. Books are a great way to build skills and absorb knowledge at a slower pace than those 2x YouTube videos.&lt;/p&gt;

&lt;p&gt;Here are some books that every frontend developer should read -&lt;/p&gt;




&lt;h3&gt;
  
  
  1. &lt;a href="https://amzn.to/36XiNrM" rel="noopener noreferrer"&gt;The Design of Everyday Things&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.amazon.com/Design-Everyday-Things-Revised-Expanded/dp/0465050654?crid=35MVDK6UQ7M0Q&amp;amp;keywords=The+Design+of+Everyday+Things&amp;amp;qid=1648614403&amp;amp;sprefix=%2Caps%2C815&amp;amp;sr=8-1&amp;amp;linkCode=li3&amp;amp;tag=prikeshsavl01-20&amp;amp;linkId=819563c8759f26f8119dc1c54813355e&amp;amp;language=en_US&amp;amp;ref_=as_li_ss_il" rel="noopener noreferrer"&gt;&lt;img src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;amp;ASIN=0465050654&amp;amp;Format=_SL250_&amp;amp;ID=AsinImage&amp;amp;MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;WS=1&amp;amp;tag=prikeshsavl01-20&amp;amp;language=en_US"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0465050654" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0465050654" alt=""&gt;&lt;/a&gt;&lt;br&gt;
Anyone who designs anything to be used by humans - from physical objects to computer programs to conceptual tools - must read this book, and it is an equally tremendous read for anyone who has to use anything created by another human. &lt;br&gt;
It could forever change how you experience and interact with your physical surroundings, open your eyes to the perversity of bad design and the desirability of good design, and raise your expectations about how things should be designed&lt;/p&gt;




&lt;h3&gt;
  
  
  2. &lt;a href="https://amzn.to/3LmExfK" rel="noopener noreferrer"&gt;Show Your Work! &lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;10 Ways to Share Your Creativity and Get Discovered&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.amazon.com/Show-Your-Work-Austin-Kleon/dp/076117897X?crid=VEMHWBOPRBCU&amp;amp;keywords=Show+Your+Work%21&amp;amp;qid=1648614736&amp;amp;sprefix=show+your+work+%2Caps%2C267&amp;amp;sr=8-1&amp;amp;linkCode=li3&amp;amp;tag=prikeshsavl01-20&amp;amp;linkId=905d78f0f0dd64ea40d4208826a8ab1a&amp;amp;language=en_US&amp;amp;ref_=as_li_ss_il" rel="noopener noreferrer"&gt;&lt;img src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;amp;ASIN=076117897X&amp;amp;Format=_SL250_&amp;amp;ID=AsinImage&amp;amp;MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;WS=1&amp;amp;tag=prikeshsavl01-20&amp;amp;language=en_US"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D076117897X" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D076117897X" alt=""&gt;&lt;/a&gt;&lt;br&gt;
In his New York Times bestseller Steal Like an Artist, Austin Kleon showed readers how to unlock their creativity by “stealing” from the community of other movers and shakers. Now, in an even more forward-thinking and necessary book, he shows how to take that critical next step on a creative journey—getting known.&lt;/p&gt;

&lt;p&gt;Show Your Work! is about why generosity trumps genius. It’s about getting findable, about using the network instead of wasting time “networking.” It’s not self-promotion, it’s self-discovery—let others into your process, then let them steal from you. Filled with illustrations, quotes, stories, and examples, Show Your Work! offers ten transformative rules for being open, generous, brave, productive&lt;/p&gt;




&lt;h3&gt;
  
  
  3. &lt;a href="https://amzn.to/3DmoprO" rel="noopener noreferrer"&gt;Hooked&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;How to Build Habit-Forming Products&lt;br&gt;
&lt;a href="https://www.amazon.com/Hooked-How-Build-Habit-Forming-Products/dp/0241184835?_encoding=UTF8&amp;amp;qid=1648614770&amp;amp;sr=8-2&amp;amp;linkCode=li3&amp;amp;tag=prikeshsavl01-20&amp;amp;linkId=f51bb676bda3467cf870912d401591f6&amp;amp;language=en_US&amp;amp;ref_=as_li_ss_il" rel="noopener noreferrer"&gt;&lt;img src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;amp;ASIN=0241184835&amp;amp;Format=_SL250_&amp;amp;ID=AsinImage&amp;amp;MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;WS=1&amp;amp;tag=prikeshsavl01-20&amp;amp;language=en_US"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0241184835" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0241184835" alt=""&gt;&lt;/a&gt;&lt;br&gt;
Why do some products capture widespread attention while others flop? What makes us engage with certain products out of sheer habit? Is there a pattern underlying how technologies hook us?&lt;br&gt;
Nir Eyal answers these questions (and many more) by explaining the Hook Model—a four-step process embedded into the products of many successful companies to subtly encourage customer behavior. Through consecutive “hook cycles,” these products reach their ultimate goal of bringing users back again and again without depending on costly advertising or aggressive messaging.&lt;/p&gt;

&lt;p&gt;Provides readers with:&lt;br&gt;
• Practical insights to create user habits that stick.&lt;br&gt;
• Actionable steps for building products people love.&lt;br&gt;
• Fascinating examples from the iPhone to Twitter, Pinterest to the Bible App, and many other habit-forming products.&lt;/p&gt;




&lt;h3&gt;
  
  
  4. &lt;a href="https://amzn.to/36Cj7fO" rel="noopener noreferrer"&gt;Don't Make Me Think&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A Common Sense Approach to Web Usability&lt;br&gt;
&lt;a href="https://www.amazon.com/Dont-Make-Think-Revisited-Usability/dp/0321965515?crid=31BF5QB7WMZE4&amp;amp;keywords=don%27t+make+me+think&amp;amp;qid=1648614848&amp;amp;sprefix=Don%27t+Make+Me+Think%2Caps%2C496&amp;amp;sr=8-1&amp;amp;linkCode=li3&amp;amp;tag=prikeshsavl01-20&amp;amp;linkId=8c1e1a506d3d5b92e18f4bbcc22fee5b&amp;amp;language=en_US&amp;amp;ref_=as_li_ss_il" rel="noopener noreferrer"&gt;&lt;img src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;amp;ASIN=0321965515&amp;amp;Format=_SL250_&amp;amp;ID=AsinImage&amp;amp;MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;WS=1&amp;amp;tag=prikeshsavl01-20&amp;amp;language=en_US"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0321965515" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D0321965515" alt=""&gt;&lt;/a&gt;&lt;br&gt;
Since Don’t Make Me Think was first published in 2000, over 400,000 Web designers and developers have relied on Steve Krug’s guide to help them understand the principles of intuitive navigation and information design.&lt;/p&gt;

&lt;p&gt;In this 3rd edition, Steve returns with fresh perspective to reexamine the principles that made Don’t Make Me Think a classic-–with updated examples and a new chapter on mobile usability. And it’s still short, profusely illustrated…and best of all–fun to read.&lt;/p&gt;

&lt;p&gt;If you’ve read it before, you’ll rediscover what made Don’t Make Me Think so essential to Web designers and developers around the world. If you’ve never read it, you’ll see why so many people have said it should be required reading for anyone working on Web sites. &lt;/p&gt;




&lt;h3&gt;
  
  
  5. &lt;a href="https://amzn.to/3uEcbXB" rel="noopener noreferrer"&gt;Actionable Gamification&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Beyond Points, Badges, and Leaderboards&lt;br&gt;
&lt;a href="https://www.amazon.com/Actionable-Gamification-Beyond-Points-Leaderboards/dp/1511744049?_encoding=UTF8&amp;amp;qid=1648614880&amp;amp;sr=8-1&amp;amp;linkCode=li3&amp;amp;tag=prikeshsavl01-20&amp;amp;linkId=adf09641c5c5e37ffc9b37df6fabd2cc&amp;amp;language=en_US&amp;amp;ref_=as_li_ss_il" rel="noopener noreferrer"&gt;&lt;img src="//ws-na.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;amp;ASIN=1511744049&amp;amp;Format=_SL250_&amp;amp;ID=AsinImage&amp;amp;MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;WS=1&amp;amp;tag=prikeshsavl01-20&amp;amp;language=en_US"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D1511744049" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fir-na.amazon-adsystem.com%2Fe%2Fir%3Ft%3Dprikeshsavl01-20%26language%3Den_US%26l%3Dli3%26o%3D1%26a%3D1511744049" alt=""&gt;&lt;/a&gt;&lt;br&gt;
The new era of Gamification and Human-Focused Design optimizes for motivation and engagement over traditional function-Focused Design. Within the industry, studies on game mechanics and behavioral psychology have become proliferate. However, few people understand how to merge the two fields into experience designs that reliably increases business metrics and generates a return on investment. &lt;/p&gt;

&lt;p&gt;Gamification Pioneer Yu-kai Chou takes reader on a journey to learn his twelve years of obsessive research in creating the Octalysis Framework, and how to apply the framework to create engaging and successful experiences in their product, workplace, marketing, and personal lives.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;Are you an &lt;strong&gt;Open Source Enthusiast&lt;/strong&gt;? Please consider subscribing to my &lt;a href="https://newsletter.prikeshsavla.com" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt;. Join many other enthusiasts on a journey in building and advancing open-source projects&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;As an Amazon Associate I earn from qualifying purchases.&lt;/p&gt;

</description>
      <category>books</category>
      <category>design</category>
      <category>programming</category>
      <category>react</category>
    </item>
    <item>
      <title>A WordPress alternative called SilverStripe</title>
      <dc:creator>Prikesh Savla</dc:creator>
      <pubDate>Thu, 31 Mar 2022 18:06:20 +0000</pubDate>
      <link>https://forem.com/prikeshsavla/a-wordpress-alternative-called-silverstripe-4b7h</link>
      <guid>https://forem.com/prikeshsavla/a-wordpress-alternative-called-silverstripe-4b7h</guid>
      <description>&lt;p&gt;Build great web experiences with a small learning curve, secure and easy customizations&lt;/p&gt;

&lt;p&gt;I was introduced to Silverstripe in &lt;a href="https://rirev.com" rel="noopener noreferrer"&gt;rirev&lt;/a&gt;, where I started working as a web developer in 2016. I have been using SilverStripe for more than 6 years now to build websites and web apps. &lt;br&gt;
The documentation is easy and the learning curve is so smooth, you might just slip and fall for this system ♥. &lt;/p&gt;

&lt;p&gt;Over time it is a goto system to build websites for me, with custom designs over WordPress and it is much more secure which is something we have to look out for when using WordPress.&lt;/p&gt;
&lt;h3&gt;
  
  
  What is Silverstripe?
&lt;/h3&gt;

&lt;p&gt;They &lt;a href="https://www.silverstripe.org/" rel="noopener noreferrer"&gt;say&lt;/a&gt;...&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Silverstripe CMS is the intuitive content management system and flexible framework loved by editors and developers alike. Equip your web teams to achieve outstanding results.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;in technical terms, Silverstripe is an &lt;em&gt;open-source&lt;/em&gt; PHP framework, which also supports a module for a robust CMS. It uses Mysql or Mariadb as a backend and can be easily deployed on any website hosting service where WordPress works.&lt;/p&gt;

&lt;p&gt;Though WordPress is not the best comparison because even without additional plugins Silverstripe does a lot.&lt;/p&gt;

&lt;p&gt;Silverstripe has 2 aspects a framework and then comes Silverstripe CMS which is built on the framework. I am just talking about the CMS for now.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;well, now you might ask...&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
  
  
  Why should I use it?
&lt;/h3&gt;

&lt;p&gt;It is secure from the go. It is even used by the New Zealand government too for some of their &lt;a href="https://trends.builtwith.com/websitelist/SilverStripe/New-Zealand" rel="noopener noreferrer"&gt;sites&lt;/a&gt;. Every new version uses the latest PHP version and comes with an active community adding new features and bug fixes.&lt;/p&gt;

&lt;p&gt;What Silverstripe promises and delivers is a great developer experience. It uses new age OOP to build all the serverside components, unlike WordPress.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Super flexible &amp;amp; extensible&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Silverstripe CMS fits the outcomes you want, and doesn't force your business outcomes into an out-of-the-box solution. Customise to your needs!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Easy-to-use&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can be the CMS expert in no time! Get started quickly and deliver your content to your users fast.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Robust &amp;amp; secure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Don’t stay awake at night worrying! Silverstripe CMS is solid as a rock, with enterprise-level security and support, so you can rest easy!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Open-source&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Collaboration from our global army of community members and commercially supported by Silverstripe.&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/silverstripe" rel="noopener noreferrer"&gt;
        silverstripe
      &lt;/a&gt; / &lt;a href="https://github.com/silverstripe/silverstripe-framework" rel="noopener noreferrer"&gt;
        silverstripe-framework
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Silverstripe Framework, the MVC framework that powers Silverstripe CMS
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Silverstripe Framework&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a href="https://github.com/silverstripe/silverstripe-framework/actions/workflows/ci.yml" rel="noopener noreferrer"&gt;&lt;img src="https://github.com/silverstripe/silverstripe-framework/actions/workflows/ci.yml/badge.svg" alt="CI"&gt;&lt;/a&gt;
&lt;a href="https://www.silverstripe.org/software/addons/silverstripe-commercially-supported-module-list/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/ca8e73001e7d76865e6142223ea7f412e248c73502ade2e6989c728f8067e91d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f73696c7665727374726970652d737570706f727465642d3030373143342e737667" alt="Silverstripe supported module"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;PHP framework forming the base for the Silverstripe CMS (&lt;a href="https://silverstripe.org" rel="nofollow noopener noreferrer"&gt;https://silverstripe.org&lt;/a&gt;).
Requires a &lt;a href="https://github.com/silverstripe/silverstripe-installer" rel="noopener noreferrer"&gt;&lt;code&gt;silverstripe-installer&lt;/code&gt;&lt;/a&gt; base project. Typically used alongside the &lt;a href="https://github.com/silverstripe/silverstripe-cms" rel="noopener noreferrer"&gt;&lt;code&gt;cms&lt;/code&gt;&lt;/a&gt; module.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Installation&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;See &lt;a href="https://docs.silverstripe.org/en/getting_started/" rel="nofollow noopener noreferrer"&gt;getting started&lt;/a&gt;
for instructions on how to start the installation process.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Bugtracker&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;Bugs are tracked on &lt;a href="https://github.com/silverstripe/silverstripe-framework/issues" rel="noopener noreferrer"&gt;github.com&lt;/a&gt;.
Please read our &lt;a href="https://docs.silverstripe.org/en/contributing/issues_and_bugs/" rel="nofollow noopener noreferrer"&gt;issue reporting guidelines&lt;/a&gt;.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Development and Contribution&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;If you would like to make changes to the Silverstripe core codebase, we have an extensive &lt;a href="https://docs.silverstripe.org/en/contributing/code/" rel="nofollow noopener noreferrer"&gt;guide to contributing code&lt;/a&gt;.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Links&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.silverstripe.org/en/getting_started/server_requirements/" rel="nofollow noopener noreferrer"&gt;Server Requirements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.silverstripe.org/en/changelogs/" rel="nofollow noopener noreferrer"&gt;Changelogs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/silverstripe/silverstripe-framework/issues" rel="noopener noreferrer"&gt;Bugtracker: Framework&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/silverstripe/silverstripe-cms/issues" rel="noopener noreferrer"&gt;Bugtracker: CMS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/silverstripe/silverstripe-installer/issues" rel="noopener noreferrer"&gt;Bugtracker: Installer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://forum.silverstripe.org/" rel="nofollow noopener noreferrer"&gt;Forums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/forum/#!forum/silverstripe-dev" rel="nofollow noopener noreferrer"&gt;Developer Mailinglist&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/silverstripe/silverstripe-framework./LICENSE" rel="noopener noreferrer"&gt;License&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Attribution&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Some icons by &lt;a href="https://p.yusukekamiyamane.com/" rel="nofollow noopener noreferrer"&gt;Yusuke Kamiyamane&lt;/a&gt;. All rights reserved. Licensed under a &lt;a href="https://creativecommons.org/licenses/by/3.0/" rel="nofollow noopener noreferrer"&gt;Creative Commons Attribution 3.0 License&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;default_media.png by Thibault Geffroy from &lt;a href="https://thenounproject.com/" rel="nofollow noopener noreferrer"&gt;The Noun Project&lt;/a&gt;. All rights reserved. Licensed under a &lt;a href="https://creativecommons.org/licenses/by/3.0/" rel="nofollow noopener noreferrer"&gt;Creative Commons Attribution 3.0 License&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/silverstripe/silverstripe-framework" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;blockquote&gt;
&lt;p&gt;alright, but what about a custom web design&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Pages in SilverStripe
&lt;/h3&gt;

&lt;p&gt;It comes with an easy component like templating structure, where you can pass parameters and reuse templates. It has support for layout templates based on the defined page type. &lt;br&gt;
It supports looping and conditionals in the template for building dynamic pages and having context in the template, no need to write PHP code in the template.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;and?...&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  About the CMS
&lt;/h3&gt;

&lt;p&gt;It supports a file upload system to save and relate files to sections and pages. You are not restricted to only featured images, but you can create your own widgets with the DataObjects and use them to show dynamic Testimonials, carousel and a lot more.&lt;/p&gt;

&lt;p&gt;It is also easy to use SCSS with the design and be able to minify and merge all styles, including third party styles and javascript if you want to.&lt;/p&gt;

&lt;p&gt;Great support for static caching pages, that gives the performance of a static site, where you can decide when the cache will refresh.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;what about the administrator?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  CMS Admin
&lt;/h3&gt;

&lt;p&gt;It comes with a user login and a great role management system inbuilt, where you can assign admin, editor, content manager and make your own groups and roles. &lt;br&gt;
The admin panel is built on React and GraphQL, working seamlessly with the CMS.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;Are you an &lt;strong&gt;Open Source Enthusiast&lt;/strong&gt;? Please consider subscribing to my &lt;a href="https://newsletter.prikeshsavla.com" rel="noopener noreferrer"&gt;newsletter&lt;/a&gt;. Join many other enthusiasts on a journey in building and advancing open-source projects&lt;/p&gt;
&lt;/blockquote&gt;




</description>
      <category>php</category>
      <category>webdev</category>
      <category>wordpress</category>
      <category>opensource</category>
    </item>
    <item>
      <title>5 things to remember when building positive UX as a developer</title>
      <dc:creator>Prikesh Savla</dc:creator>
      <pubDate>Thu, 20 Jan 2022 14:52:14 +0000</pubDate>
      <link>https://forem.com/prikeshsavla/5-things-to-remember-when-building-positive-ux-as-a-developer-3g23</link>
      <guid>https://forem.com/prikeshsavla/5-things-to-remember-when-building-positive-ux-as-a-developer-3g23</guid>
      <description>&lt;p&gt;Not every development team comes with a designer available. Often the developers decide the user experience around a feature or even a whole product.&lt;/p&gt;

&lt;p&gt;In my 6 years as a Web Developer, I have been trying to build better user experiences for web apps. A developer (frontend or not) might not be able to decide on a great design but that won't stop the course of the project.   &lt;/p&gt;

&lt;p&gt;A great design must always lead to a great user experience.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;User Experience (UX)&lt;/strong&gt; refers to the user's journey when using a product or service. It is can cover anything from how well the user can navigate the product, how easy it is to use, how relevant the content displayed is etc.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As someone building a good user experience, you must empathize with the user. Understand how they feel while interacting with your product or service.&lt;/p&gt;

&lt;p&gt;I want to talk about steps to take when a designer or a developer chooses to build a good UX. What questions to ask your client, yourself, your team, and make decisions for a better UX.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Why are you building this?
&lt;/h3&gt;

&lt;p&gt;The first question is always, &lt;em&gt;"why are you building this?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;To answer this question, you need to understand if it is an &lt;strong&gt;essential feature&lt;/strong&gt; or not. An essential feature is something without which application is incomplete. In that case, you have to make sure it is &lt;strong&gt;easy to use&lt;/strong&gt; and &lt;strong&gt;difficult to make mistakes on&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For an e-commerce system, the product and the checkout page are essential features. They would have the most user interactions than the rest of the system. Hence, they must have a great user experience for users to come back and buy things.&lt;/p&gt;

&lt;p&gt;Another example is Instagram, with its image upload and editing feature. As Instagram completely depends on users to upload pictures, they cannot have a bad UX there.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S72pdZpr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174210537/MSYWwvEZC.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S72pdZpr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174210537/MSYWwvEZC.jpeg" alt="pexels-wendy-wei-4945353 (1).jpg" width="880" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Look how popular services do this.
&lt;/h3&gt;

&lt;p&gt;At this point, you know how important your feature is. Now it is time to decide what to build. &lt;strong&gt;Looking at popular services&lt;/strong&gt; should be your first thought as a designer or developer. Even when it is your &lt;strong&gt;direct competition&lt;/strong&gt; and your product is changing the way it worked before.&lt;/p&gt;

&lt;p&gt;By looking at popular services you get to &lt;strong&gt;see their progress&lt;/strong&gt; from one design to the next. You will find great insights into the feature. And it is a must that you look at many different popular services. What works for them and what doesn't. And remember &lt;strong&gt;what works for them will not always work for you&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;If you are thinking of a crucial image upload feature you must look at Instagram, Pinterest. Making an OTT video player, look at Netflix, Hulu, and any service that you use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pKVs-Ex8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174230205/OiMUC-ted.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pKVs-Ex8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174230205/OiMUC-ted.jpeg" alt="pexels-pixabay-4158.jpg" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Deliver a familiar experience if possible
&lt;/h3&gt;

&lt;p&gt;We all go to the same store for our groceries every time, we know the vendor, how it works in the shop, do they take cash or online payments. Having a familiar environment makes it appealing over to any other store. There are times when people even deny a more convenient experience for a more familiar one.&lt;/p&gt;

&lt;p&gt;By looking at these popular services you identified what was familiar to your users. This will help you decide when building the experiences that users will appreciate.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XbrpM3_8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174244686/VXaiWsnba.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XbrpM3_8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn.hashnode.com/res/hashnode/image/upload/v1642174244686/VXaiWsnba.jpeg" alt="pexels-kevin-ku-577585.jpg" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Where to start
&lt;/h3&gt;

&lt;p&gt;Well, that was research. Let's talk about actually building this now. As a developer, you have 2 approaches.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Find a plugin that does this for you and customize&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is time to find a good plugin or library that does it the way you want. There are a lot of options and most of the time they are customizable to your preferences.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Build it from scratch.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Say you can't find what you needed, then you can build it on your own. Consider the capabilities of your platform or framework and try to build what you need. If you are using a design framework, you might already have the components lying around. &lt;/p&gt;

&lt;p&gt;All you need to do now is to build it the way you want it. Remember building from scratch doesn't always mean using the most basic components. Use your frameworks wisely, and you can save a lot of time and effort. &lt;/p&gt;

&lt;h3&gt;
  
  
  5. Make it modular
&lt;/h3&gt;

&lt;p&gt;This applies whether you built it from scratch or used a plugin. Do not forget to refactor it down to a testable or at least a modular form. That makes sure you have more control over it in this application. And also if you find yourself building something similar in the future you will be able to reuse this.&lt;/p&gt;

&lt;p&gt;This is true from button components to a chat window, anything can be a requirement in the future.&lt;/p&gt;

&lt;p&gt;Best of luck with all your adventures in building great experiences&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ux</category>
      <category>design</category>
    </item>
    <item>
      <title>🌎 What is a REST API ? 10 best practices when building a REST API</title>
      <dc:creator>Prikesh Savla</dc:creator>
      <pubDate>Fri, 25 Jun 2021 05:06:00 +0000</pubDate>
      <link>https://forem.com/prikeshsavla/what-is-a-rest-api-10-best-practices-when-building-a-rest-api-4p9b</link>
      <guid>https://forem.com/prikeshsavla/what-is-a-rest-api-10-best-practices-when-building-a-rest-api-4p9b</guid>
      <description>&lt;p&gt;An API, or application programming interface, is a set of rules that define how applications or devices can connect to and communicate with each other.&lt;/p&gt;

&lt;p&gt;An API needs to meet the following rules to be called a RESTful / REST API.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Client-server&lt;/strong&gt;: A RESTful API follows the client-server model where the server serves data and clients connect to the server to consume data. You can use Hoppscotch as a client for your API server to build and understand how API is used in the real world.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Stateless&lt;/strong&gt;: A RESTful API should be stateless. Each request is treated as a standalone request. The server should not keep track of any internal state that might influence future requests.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Uniform interface&lt;/strong&gt;: All API requests for the same resource should look the same, no matter where the request comes from.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;The go-to Open-source tool for building an API would be &lt;a href="https://hoppscotch.io/"&gt;Hoppscotch&lt;/a&gt; (previously known as Postwoman). It is crafted with Vue.js and a minimalistic design. You can save it as a PWA and use it whenever you want, like a desktop or a mobile app.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Read the &lt;a href="https://aviyel.com/post/163/what-is-a-rest-api"&gt;full article&lt;/a&gt; where we talk about the 10 best practices to build a robust and secure REST API&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>api</category>
      <category>tutorial</category>
      <category>rest</category>
    </item>
  </channel>
</rss>
