Essays, poems, and personal reflections from the desk and drawer.

essay

Things that make me happy

1 November 2024

I came across this post by Kev Quirk, where he shares the things that bring him happy. Personally, I believe that happiness is a skill we can train and develop over time....

notes

To generate random value in PL/SQL

30 October 2024

To update a column with a random value in PL/SQL, you can use the DBMS_RANDOM package, which provides functions for generating random numbers or strings.

To update random number

BEGIN
    UPDATE employees
    SET salary = ROUND(DBMS_RANDOM.VALUE(100, 500));
    COMMIT;
END;
  • DBMS_RANDOM.VALUE(100, 500) generates a random decimal number between 100 and 500.
  • ROUND is used to convert the decimal value to an integer.

To update random string

BEGIN
   UPDATE employees
    SET password = DBMS_RANDOM.STRING('x', 8);  -- 'x' specifies alphanumeric characters
    COMMIT;
END;
  • DBMS_RANDOM.STRING('x', 8) generates an 8-character alphanumeric string.
  • ‘x’ specifies alphanumeric characters (letters and numbers). Other options include ‘a’ for alphabets and ‘u’ for uppercase only.

essay

My plants

28 October 2024

I love plants and have a few in my flat. I want to create a list of all the plants I've ever had, so I'm sharing photos of them here.

notes

വഴിയമ്പലങ്ങൾ

25 October 2024

ഹൃദയത്തിൽ വഴിയമ്പലങ്ങൾ കണക്കെ
ഇടങ്ങൾ ഉണ്ടായിരിക്കണം.
കോരിച്ചൊരിയുന്ന മഴയത്ത് ഓടിക്കയറാനും
ഒരു പുലരിയിൽ വിട പറയാതെ
യാത്ര തുടങ്ങാനും സാധിക്കുന്ന
മനോഹരയിടങ്ങൾ.

notes

PL/SQL MINUS Operator

23 October 2024

The PL/SQL MINUS operator returns all rows from the first query that are not present in the second query. Each SELECT statement defines a dataset, and the MINUS operator retrieves all records from the first dataset, excluding any that also appear in the second dataset.

select stock_id, stock_name
from stock_master
where active = 'Y'

minus

select stock_poid, stock_desc
from stock_ledger
where transaction_date > '01-JAN-24'
References

Tech on the net

essay

Basic rules for life

20 October 2024

I believe having a set of personal rules can lead to a more peaceful and productive life. After diving deep into self-help material, I’ve crafted a list of principles I want to follow daily.

notes

Dream

16 October 2024

I want to stay in the dream from the night we met. It’s the wildest fantasy I’ve ever had. Can we meet there again? Just to kiss you one last time, and hold you once more after a million embraces.

notes

Slash pages in Hugo

16 October 2024

In Hugo, creating different slash pages (like /about/, /uses/, etc.) involves creating specific content files for each page and customizing templates as needed.

  • Create individual markdown files for each slash page under content/.
    If you want to create an /about/ page in your blog, add a markdown page with below front matter in the content/ page.
//content/about.md
---
title: "About"
date: 2024-10-16
---

This is the About page content.
  • Optionally create a template for the page.
    Hugo uses the single.html template from the layouts/_default/ folder to render pages by default. However, you can create custom templates in the layouts/page/ folder to format specific pages as needed.
//layouts/page/about.html

<h1>{{ .Title }}</h1>
<div class="content">
  {{ .Content }}
</div>

You can check my slash pages like uses, credits, and changelog.

References

Hugo Docs

notes

Hugo Troubleshooting

14 October 2024

Hugo is fast, but ineffecinet templates can make it slower. For checking the performance you can use the below commands.

  • Use hugo --logLevel debug to display debug information, warning, and error message.

  • Use hugo --templateMetrics to check for slow templates. This will show the time it takes to render each template.

  • Use hugo --gc (garbage collection) to clean up unused files, which might help reduce build time.

  • Use debug.Timer to determine the execution time of a block of code. And use the hugo --logLevel info info command line flag when you build the site.

{{ $t := debug.Timer "TestSqrt" }}
{{ range seq 2000 }}
  {{ $f := math.Sqrt . }}
{{ end }}
{{ $t.Stop }}
References

Hugo Docs