<?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>DEV Community: Michael Akanji</title>
    <description>The latest articles on DEV Community by Michael Akanji (@matscode).</description>
    <link>https://dev.to/matscode</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%2F37613%2F6ad3dc79-3b04-40c9-a07d-d89b1b9b07bf.jpg</url>
      <title>DEV Community: Michael Akanji</title>
      <link>https://dev.to/matscode</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/matscode"/>
    <language>en</language>
    <item>
      <title>Vercel’s "Agentic" Shift: Is Your Proprietary Code Now Training AI?</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Mon, 23 Mar 2026 16:33:54 +0000</pubDate>
      <link>https://dev.to/matscode/vercels-agentic-shift-is-your-proprietary-code-now-training-ai-402h</link>
      <guid>https://dev.to/matscode/vercels-agentic-shift-is-your-proprietary-code-now-training-ai-402h</guid>
      <description>&lt;p&gt;&lt;strong&gt;The deadline to protect your team’s data is March 31, 2026.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you logged into Vercel this morning, you likely saw a high-polish popup titled &lt;strong&gt;"Enabling Agentic Infrastructure."&lt;/strong&gt; While the marketing focuses on the "Self-Driving Cloud," the underlying change to data handling is something every Principal Engineer and CTO needs to audit immediately.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frg0z43vaibublyceyqi0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frg0z43vaibublyceyqi0.png" alt=" " width="800" height="835"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vercel is moving from being a passive host to an active agent. This requires "context," and that context is your source code.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Fine Print: Default Opt-Ins
&lt;/h2&gt;

&lt;p&gt;Vercel has updated its infrastructure to allow for &lt;strong&gt;AI Model Training.&lt;/strong&gt; According to the new notice, Vercel is now using project code and agent chats to train their models and—critically—sharing that data with third-party AI providers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Risk Profile:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hobby and Trial Pro plans:&lt;/strong&gt; These appear to be &lt;strong&gt;OPTED-IN by default.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pro and Enterprise plans:&lt;/strong&gt; While theoretically opted-out, we are seeing inconsistent toggles across different organization dashboards. Do not assume your tier protects you.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why This is a Business Concern
&lt;/h2&gt;

&lt;p&gt;While Vercel states that PII, environment variables, and API keys are redacted, "anonymized" code still poses significant risks:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Intellectual Property Leakage:&lt;/strong&gt; Even without secrets, your architectural patterns, proprietary algorithms, and internal logic are now being fed into a collective "brain" that serves your competitors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compliance Failures:&lt;/strong&gt; If your company operates under SOC2, HIPAA, or GDPR, "opting in" to share data with unnamed third-party AI trainers may directly violate your existing Data Processing Agreements (DPAs).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Ingestion Deadline:&lt;/strong&gt; The cutoff is &lt;strong&gt;March 31, 2026.&lt;/strong&gt; If you opt out after this date, future data is protected, but the data already ingested into the training set cannot be "un-learned."&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What "Agentic Infrastructure" Actually Does
&lt;/h2&gt;

&lt;p&gt;Vercel is building a platform that can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Proactively investigate incidents&lt;/strong&gt; by analyzing logs and source code in real time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open PRs automatically&lt;/strong&gt; to optimize cloud spend or fix performance regressions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Act as an AI Concierge&lt;/strong&gt; that allows your team to "chat" with your entire codebase.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are powerful features, but they come at the cost of data sovereignty. For many enterprise teams, the trade-off isn't worth it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 60-Second Security Audit
&lt;/h2&gt;

&lt;p&gt;If you manage a professional team, take these steps before the end of the day:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Locate the Toggle:&lt;/strong&gt; Navigate to &lt;code&gt;Team Settings&lt;/code&gt; &amp;gt; &lt;code&gt;Data Preferences&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verify the Setting:&lt;/strong&gt; Look for &lt;strong&gt;"Improve models with my data."&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Toggle OFF:&lt;/strong&gt; Unless you have explicit clearance from your legal or security team to contribute proprietary code to third-party AI models, switch this to off.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Final Perspective
&lt;/h2&gt;

&lt;p&gt;We are entering an era where infrastructure providers are hungry for data to fuel their agents. Innovation is great, but as engineers, our first job is to protect the integrity and privacy of the systems we build. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Check your settings before March 31st.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>security</category>
      <category>vercel</category>
    </item>
    <item>
      <title>File Permission on unix Systems</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Mon, 26 Jan 2026 14:26:06 +0000</pubDate>
      <link>https://dev.to/matscode/file-permission-on-unix-systems-3ck3</link>
      <guid>https://dev.to/matscode/file-permission-on-unix-systems-3ck3</guid>
      <description>&lt;p&gt;File permission on Unix Systems&lt;/p&gt;

&lt;p&gt;Good day ya’ll hope we are all gingered and looking to learn one or two things from this discussion.&lt;/p&gt;

&lt;p&gt;On Unix System(actually all systems), we have at least a user or even more. And also we have files. Now that we are reminded of that. You would agree with me that you might want to give access to some file to a particular user, a group of users or everybody (every user).&lt;/p&gt;

&lt;p&gt;To manage access to files on a system properly, that gave birth to File Permissions. This means every file you see in a system(e.g your computer) has some set of permission attached to em.&lt;/p&gt;

&lt;p&gt;PS: For some moment lets consider a directory(Folder) to be a file also. You’d see how we differentiate them as the discussion goes deep 😉.&lt;/p&gt;

&lt;p&gt;Now lets talk about how this permissions are being put to use;&lt;br&gt;
We have 3 type of permission, which are; &lt;br&gt;
read, &lt;br&gt;
write &lt;br&gt;
and execute&lt;/p&gt;

&lt;p&gt;Read: Take this word literal. This is just being able to see/read/access/consume/etc the content of a file by a user, a group of users or everybody(every user).&lt;/p&gt;

&lt;p&gt;Write: This is being able to modify, create and/or delete a file by a user, a group of users or everybody.&lt;/p&gt;

&lt;p&gt;Execute: This permission is useful for file that are classified as a system program/application/software/package or in general term, executables files.&lt;/p&gt;

&lt;p&gt;Proceeding more into demystifying File Permissions. This 3 types of permission we just talked about can be applied for a user, a group of users or everybody on a file.&lt;/p&gt;

&lt;p&gt;Now the question beacons, How do we apply this permission for the 3 state of users that we have. Listed;&lt;br&gt;
Owner: Just a normal user, I have been addressing as User from the beginning of our chat. &lt;br&gt;
Group: This is when we have more than one user on a system, we always do. And this users can be grouped probably based on common goals/assignment/activity/roles. So basically, group is just a group created for more than one users. 😁&lt;br&gt;
Others: This is the user state I have been addressing as everybody (every user) from the beginning of our chat. In other simple words; Others are users that don’t belong to the user state of being an owner and does not belong to the group assigned to a file.&lt;/p&gt;

&lt;p&gt;Now, lets head on and see how the read, write and execute permission are being attach to a file for the 3 states of users that we have, recall, owner(a user), group(group of users), other(everybody/every-user).&lt;/p&gt;

&lt;p&gt;Every file has the permissions for this 3 state of users in the manner below;&lt;/p&gt;

&lt;p&gt;(*) (owner)(group)(others)&lt;/p&gt;

&lt;p&gt;The owner, group, others bracket, well, I guess/hope you know what they are. Ignore the first bracket with the ‘*’ for now. 😉&lt;/p&gt;

&lt;p&gt;Lets give an example of this permission rather than the 3 user state representation..&lt;/p&gt;

&lt;p&gt;(*)(rwx)(rwx)(rwx)&lt;/p&gt;

&lt;p&gt;R = Read, W = Write and X = Execute&lt;/p&gt;

&lt;p&gt;These permissions have a different pattern when you look at it on a system though.. Which looks more like the below;&lt;/p&gt;

&lt;p&gt;-rwxrwxrwx&lt;/p&gt;

&lt;p&gt;You’d notice there is no grouping done with bracket and our first ‘*’ character is now ‘-‘ .&lt;/p&gt;

&lt;p&gt;I want you to remember the point where we consider a Directory(Folder) as a File. This is our we differentiate a directory from our regular file. From the example representation of the permission I did earlier; remember I ask us to ignore the ‘*’ in the first grouping of the permissions of user state. That spot is actually reserved for Directories(Folders). So let us see an example of a directory kind of permission below;&lt;/p&gt;

&lt;p&gt;(d)(rwx)(rwx)(rwx)&lt;/p&gt;

&lt;p&gt;PS: In my permission examples so far, I have been adding the read, write and execute permission. But I want you to know it is not always going to be like that. Some file might only have read and write permission for the owner and none for other user states; e.g&lt;/p&gt;

&lt;p&gt;(-)(rw-)(—)(—)&lt;/p&gt;

&lt;p&gt;When no permission is set, the permission spot would be represented with ‘-‘ . The permission above translate that only the only can do anything to whichever file that has this permission. By anything I mean, modifying(e.g renaming or updating file content) or deleting the file.&lt;/p&gt;

&lt;p&gt;Who is an owner? &lt;br&gt;
An owner is the owner of a file. An owner is the user that created a file on a system. That is one simple way of being an owner. Another way is if a user makes you the owner of a file. Meanwhile you can also make a group the owner of a file. &lt;/p&gt;

&lt;p&gt;How about a group?&lt;br&gt;
Just a group of users. A group as to be created first and users added to the group.&lt;/p&gt;

&lt;p&gt;Now let see an example command to actually set permission for a file using the famous command ‘chmod';&lt;/p&gt;

&lt;p&gt;Setting permission - Using the ‘+’ (plus) sign, adds new permission to the file.&lt;br&gt;
chmod +rwx file-name        (Give all user states rwx permissions)&lt;br&gt;
I.e From the command above we have this end result  (*)(rwx)(rwx)(rwx)&lt;/p&gt;

&lt;p&gt;Setting permission for only user - Using the ‘=‘ (equal) sign, this overwrite whatever permission set on the file already.&lt;br&gt;
chmod u=rx file-name        (Give the owner rx permissions, excluding w)&lt;br&gt;
I.e From the command above we have the end result (*)(r-x)(—)(---)&lt;/p&gt;

&lt;p&gt;Setting permission for user - Using the ‘+’ (plus) sign, this does not overwrite existing permission on the file. But rather append the new permission to the old permission&lt;br&gt;
chmod u+x file-name      (Add x permission for user, remember the first command sets the rx permissions)&lt;br&gt;
I.e From the command above we have the end result (&lt;em&gt;)(rwx)(—)(—)&lt;br&gt;
I guess you guys know what happens when you use the ‘-' (minus) sign.&lt;br&gt;
Setting permission for only user and group;&lt;br&gt;
chmod gu+w file         (Give write permission to the user and group of the file)&lt;br&gt;
End result is : (&lt;/em&gt;)(-w-)(-w-)(---)&lt;br&gt;
Setting different permission for group and user;&lt;br&gt;
chmod g+rx,u+rwx,o+r file    (OK to combine like this with a comma)&lt;br&gt;
End result : (*)(rwx)(r-x)(r—)&lt;/p&gt;

&lt;p&gt;Now, let's head on to talk about an easier way to setting permissions, still using the chmod command.&lt;br&gt;
This time let consider 3 groups to the permission;&lt;br&gt;
(owner)(group)(others)&lt;br&gt;
We would represent our permission with numbers as below;&lt;br&gt;
Read as 4, yea number 4&lt;br&gt;
Write as 2&lt;br&gt;
And Execute as 1&lt;br&gt;
Now to apply this permissions for a user state. It is required that we apply all user state permissions at once while representing each state permission with just a number. &lt;br&gt;
A number; We get a number by using one of the numbers used to represent each permission above. But incases that you want to apply more than one permission to a user state. All you have to do is a little arithmetic of adding the permissions together for the user state. i.e 4(Read) + 2(Write) = 6(Read and Write) Permission for whatever state. e.g (6)(0)(0) with actual end result of (&lt;em&gt;)(rw-)(—)(---)&lt;br&gt;
Let set permission using our new easier way by converting one of our previous ways ’Setting different permission for group and user’;&lt;br&gt;
chmod 754 file-name    (OK to combine like this with a comma)&lt;br&gt;
End result : (&lt;/em&gt;)(rwx)(r-x)(r—) &lt;/p&gt;

&lt;p&gt;Talking about best practices to setting file permission.&lt;br&gt;
Don’t add X - Execute permission to a file that is not meant to be executable e.g safe permission for web app source code files should be 666&lt;br&gt;
Give others only read permission unless you are sure of what you doing.&lt;br&gt;
When setting bulk permission i.e more than one file at a time. Always try to use the ‘find’ command.&lt;/p&gt;

&lt;p&gt;Best and Easy way to Setting bulk permission&lt;br&gt;
This can be achieved by using the find command; I will be showing 2 examples that applies to every programmers day to day activity.&lt;/p&gt;

&lt;p&gt;Setting bulk directory permissions&lt;br&gt;
find path/ -type d -exec chmod 777 {} \;&lt;br&gt;
Change ‘path/‘ to the path where you want your command to perform bulk permission setting recursively.&lt;/p&gt;

&lt;p&gt;Setting bulk file permission&lt;br&gt;
find path/ -type f -exec chmod 666 {} \;&lt;/p&gt;

&lt;p&gt;Bringing us to the end of the discussion 'file permission on unix systems’ … There is something I saved for the end. Which is; It is imperative for directories(folders) to always have the X:Execute permission if you want users to have the ability to list the content of a directory.&lt;/p&gt;

&lt;p&gt;Phew.. Never imagine this topic would be this long…&lt;/p&gt;

&lt;p&gt;I look forward to answering any questions?&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>linux</category>
      <category>security</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>How can I reserve/protect/disable certain keywords in applications?</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Tue, 21 Apr 2020 01:18:56 +0000</pubDate>
      <link>https://dev.to/matscode/how-can-i-reserve-protect-disable-certain-keywords-in-applications-3o1d</link>
      <guid>https://dev.to/matscode/how-can-i-reserve-protect-disable-certain-keywords-in-applications-3o1d</guid>
      <description>&lt;p&gt;Hello there,&lt;/p&gt;

&lt;p&gt;Firstly; thanks for showing up here.&lt;/p&gt;

&lt;p&gt;I am developing a web application. So I would like to learn/hear from you on how I can protect, reserve, restrict and/or disable some keywords from being used by users as their username of choice. &lt;/p&gt;

&lt;p&gt;i.e When a user choose to use &lt;em&gt;Administrator&lt;/em&gt; as his/her username. They should get an error saying, the username is not available only because I have added the word &lt;code&gt;Administrator&lt;/code&gt; as a reserved word on the server.&lt;/p&gt;

&lt;p&gt;Now the last part of my question is; What happens in a case I forgot to reserve a word and a user was able to choose it as their username of choice. What is the next thing to do in this case?&lt;/p&gt;

&lt;p&gt;Thanks in anticipation of your responses.&lt;/p&gt;

</description>
      <category>startup</category>
      <category>discuss</category>
      <category>security</category>
    </item>
    <item>
      <title>When to use LET or CONST</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Wed, 24 Jul 2019 11:00:37 +0000</pubDate>
      <link>https://dev.to/matscode/when-to-use-let-or-const-4fag</link>
      <guid>https://dev.to/matscode/when-to-use-let-or-const-4fag</guid>
      <description>&lt;p&gt;Hello there, &lt;/p&gt;

&lt;p&gt;Wooooow, you are interested in my opinion. I would like to get to know yours too in the comment section below :-D.&lt;/p&gt;

&lt;p&gt;I have gone through numerous lines of javascript code from different coders. And I have seen the different use case of &lt;code&gt;let&lt;/code&gt; and &lt;code&gt;const&lt;/code&gt;, not conventional I would say.&lt;/p&gt;

&lt;p&gt;So, I thought to myself maybe I should share the way I address which to use whenever I am coding, &lt;em&gt;How I choose whether to use &lt;code&gt;let&lt;/code&gt; or &lt;code&gt;const&lt;/code&gt;&lt;/em&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  How do I choose?
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;Here are my recommendations;&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;let&lt;/code&gt; only on primitive values that are liable to be mutated.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;e.g&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;balance&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;475&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;const&lt;/code&gt; as it's apparent, should be used for primitive values that you want to make immutable and its identifier should be in UPPER_CASE.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;e.g&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;3.14&lt;/span&gt; &lt;span class="c1"&gt;// do you remember this guy from primary math...&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;And lastly, always use &lt;code&gt;const&lt;/code&gt; for objects.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;e.g&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// this? , you don't want to lose the reference to your object, right?&lt;/span&gt;
&lt;span class="c1"&gt;// which also encourage explicit operations on your object properties&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;EmptyObj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I hope this my little opinion is helpful. Once again, I wish to read your opinion in the comment section of this post. It might open my eyes to a different perspective.&lt;/p&gt;

&lt;h5&gt;
  
  
  &lt;em&gt;Do you enjoy the read?&lt;/em&gt;
&lt;/h5&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>JavaScript: Harvest string words first chars..</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Fri, 17 May 2019 05:32:43 +0000</pubDate>
      <link>https://dev.to/matscode/javascript-harvest-string-words-first-chars-3dde</link>
      <guid>https://dev.to/matscode/javascript-harvest-string-words-first-chars-3dde</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4leadrs9wmni9yepg9v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4leadrs9wmni9yepg9v.png" width="800" height="971"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>reactnative</category>
    </item>
    <item>
      <title>Does DEV.TO have an OAuth Server to fetch User Posts</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Tue, 15 May 2018 10:28:33 +0000</pubDate>
      <link>https://dev.to/matscode/does-devto-have-an-oauth-server-to-fetch-user-posts-4n6f</link>
      <guid>https://dev.to/matscode/does-devto-have-an-oauth-server-to-fetch-user-posts-4n6f</guid>
      <description></description>
      <category>oauth</category>
      <category>programming</category>
      <category>discuss</category>
      <category>blog</category>
    </item>
    <item>
      <title>Learning and Teaching Style that works..</title>
      <dc:creator>Michael Akanji</dc:creator>
      <pubDate>Tue, 17 Oct 2017 13:15:27 +0000</pubDate>
      <link>https://dev.to/matscode/learning-and-teaching-styles-that-works-3md</link>
      <guid>https://dev.to/matscode/learning-and-teaching-styles-that-works-3md</guid>
      <description>&lt;p&gt;I never planned on posting this, so please ignore the untidiness and I am not much of a Writer. It was an answer I gave to a question on this platform. But then I thought I should share it as a post.  Gives a thumb if you find it interesting, and also share with a friend.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Learning Style&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Firstly I have to mention, when it comes to learning, I need practicals/visuals to understand while wishing for a tutor. But down the line, I found a way to learn by my self which I am just gonna summarize using programming language as an example.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read the book provided with the language/tool. Alternatively find a resource and stick with the resource through thick and thing.&lt;/li&gt;
&lt;li&gt;Understand what you read and Practice each topic.&lt;/li&gt;
&lt;li&gt;Never leave a topic until you understand the How, Why, When etc of it.&lt;/li&gt;
&lt;li&gt;Pick up a project to apply what you have learnt..&lt;/li&gt;
&lt;li&gt;When you forget how to do stuff, go back to the topic that's related to what you want to do in your resource..&lt;/li&gt;
&lt;li&gt;Go to step above.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Teaching Style&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The key i found to this in my years of teaching is &lt;em&gt;FUN&lt;/em&gt;.. Make what you wanna teach fun. Nobody forgets something easily if its a good memory. while every wishes to forget the bad memories. but wants the good ones to stay. Yes, sometimes we have students that are &lt;em&gt;introverts&lt;/em&gt; and all. Psychologically I most time read such student to be one that's not wanting to get hurt, so the key here is make yourself a reliable and trustworthy friend. Before you know it, they'll tell you all their secrets. that way they will want you around most times. making it such that your class wont be one they'll wanna miss and also be punctual to every one your classes.&lt;/p&gt;

&lt;p&gt;After you achieve the connection above with every of your student. They would not mind telling you whenever they are confused on a topic, even before you ask if they understand what you have been teaching so far.&lt;/p&gt;

&lt;p&gt;Now the teaching technique I use is by relating every thing I teach to daily activities. i.e If I am teaching about &lt;code&gt;control structures&lt;/code&gt;, I wouldn't just go on and on with the gibberish part of it as it is new to them. I would rather give a life scenario of them sending a friend to get em snack e.g Ben get me Pizza if its fresh, else get me Sausages. then i relate it to the &lt;code&gt;control structure&lt;/code&gt; I am teaching. That way, they'll understand pretty well, even if they forget how to do an &lt;code&gt;if-else&lt;/code&gt;, they'll check their note and recall in a jiffy.&lt;/p&gt;

&lt;p&gt;The top of all is ask em to choose a case study of choice. you all work on it and find solutions to problem arising in each step of the way. this way, they get to see how what they've learnt is applied in real life.&lt;/p&gt;

&lt;p&gt;In the end, make it paramount to the student to always know where to go when they find it hard to understand something. show them some examples. &lt;em&gt;Google search&lt;/em&gt; in their presence, &lt;em&gt;Make&lt;/em&gt; and &lt;em&gt;Use&lt;/em&gt; references.&lt;/p&gt;

&lt;p&gt;PS: As they see you as their guru, even if you remember something. Once in while act like you don't and go check your reference. that way they also would know you are not perfect and know the time to ask for help.&lt;/p&gt;

&lt;p&gt;PPS: Don't forget to give simple task. its just for them to practice and get familiar to conventions and not to test their thinking faculty.&lt;/p&gt;

&lt;h3&gt;
  
  
  In Conclusion
&lt;/h3&gt;

&lt;p&gt;I found teaching to be one of the best thing I feel I am good at. And I always hold on to the believe &lt;/p&gt;

&lt;p&gt;&lt;em&gt;"Even if you do not want to learn, You would learn as far as you signed up"&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;Being on the other side i.e me being the learner, I am fast in learning and adapting or with a tutor helping out. But when the tutor is bad, I find it hard to learn.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>career</category>
      <category>learning</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
