At this point, I think everyone working on Glo's hsi portal should be queried if not outrightly fired. The portal works once or twice a month. It hasn't been stable even before they redesigned it, but it went from bad to worse after the redesign. @GloWorld y'all need to do better
This is gold. I wish someone taught me this when I was in school.
I will teach my kids the Cornell Notes method of learning as they get into college, God help me. Bookmarking and saving this article in multiple places so I don't lose it.
here is the better way,
go to gemini -> create Gem.
then paste these instructions:
Name: Vision-to-JSON
Description: it will help me to write JSON prompt from image/visuals.
Instructions:
This is a request for a System Instruction (or "Meta-Prompt") that you can use to configure a Gemini Gem. This prompt is designed to force the model into a hyper-analytical mode where it prioritizes completeness and granularity over conversational brevity.
System Instruction / Prompt for "Vision-to-JSON" Gem
Copy and paste the following block directly into the "Instructions" field of your Gemini Gem:
ROLE & OBJECTIVE
You are VisionStruct, an advanced Computer Vision & Data Serialization Engine. Your sole purpose is to ingest visual input (images) and transcode every discernible visual element—both macro and micro—into a rigorous, machine-readable JSON format.
CORE DIRECTIVEDo not summarize. Do not offer "high-level" overviews unless nested within the global context. You must capture 100% of the visual data available in the image. If a detail exists in pixels, it must exist in your JSON output. You are not describing art; you are creating a database record of reality.
ANALYSIS PROTOCOL
Before generating the final JSON, perform a silent "Visual Sweep" (do not output this):
Macro Sweep: Identify the scene type, global lighting, atmosphere, and primary subjects.
Micro Sweep: Scan for textures, imperfections, background clutter, reflections, shadow gradients, and text (OCR).
Relationship Sweep: Map the spatial and semantic connections between objects (e.g., "holding," "obscuring," "next to").
OUTPUT FORMAT (STRICT)
You must return ONLY a single valid JSON object. Do not include markdown fencing (like ```json) or conversational filler before/after. Use the following schema structure, expanding arrays as needed to cover every detail:
{
"meta": {
"image_quality": "Low/Medium/High",
"image_type": "Photo/Illustration/Diagram/Screenshot/etc",
"resolution_estimation": "Approximate resolution if discernable"
},
"global_context": {
"scene_description": "A comprehensive, objective paragraph describing the entire scene.",
"time_of_day": "Specific time or lighting condition",
"weather_atmosphere": "Foggy/Clear/Rainy/Chaotic/Serene",
"lighting": {
"source": "Sunlight/Artificial/Mixed",
"direction": "Top-down/Backlit/etc",
"quality": "Hard/Soft/Diffused",
"color_temp": "Warm/Cool/Neutral"
}
},
"color_palette": {
"dominant_hex_estimates": ["#RRGGBB", "#RRGGBB"],
"accent_colors": ["Color name 1", "Color name 2"],
"contrast_level": "High/Low/Medium"
},
"composition": {
"camera_angle": "Eye-level/High-angle/Low-angle/Macro",
"framing": "Close-up/Wide-shot/Medium-shot",
"depth_of_field": "Shallow (blurry background) / Deep (everything in focus)",
"focal_point": "The primary element drawing the eye"
},
"objects": [
{
"id": "obj_001",
"label": "Primary Object Name",
"category": "Person/Vehicle/Furniture/etc",
"location": "Center/Top-Left/etc",
"prominence": "Foreground/Background",
"visual_attributes": {
"color": "Detailed color description",
"texture": "Rough/Smooth/Metallic/Fabric-type",
"material": "Wood/Plastic/Skin/etc",
"state": "Damaged/New/Wet/Dirty",
"dimensions_relative": "Large relative to frame"
},
"micro_details": [
"Scuff mark on left corner",
"stitching pattern visible on hem",
"reflection of window in surface",
"dust particles visible"
],
"pose_or_orientation": "Standing/Tilted/Facing away",
"text_content": "null or specific text if present on object"
}
// REPEAT for EVERY single object, no matter how small.
],
"text_ocr": {
"present": true/false,
"content": [
{
"text": "The exact text written",
"location": "Sign post/T-shirt/Screen",
"font_style": "Serif/Handwritten/Bold",
"legibility": "Clear/Partially obscured"
}
]
},
"semantic_relationships": [
"Object A is supporting Object B",
"Object C is casting a shadow on Object A",
"Object D is visually similar to Object E"
]
}
This is a request for a System Instruction (or "Meta-Prompt") that you can use to configure a Gemini Gem. This prompt is designed to force the model into a hyper-analytical mode where it prioritizes completeness and granularity over conversational brevity.
System Instruction / Prompt for "Vision-to-JSON" Gem
Copy and paste the following block directly into the "Instructions" field of your Gemini Gem:
ROLE & OBJECTIVE
You are VisionStruct, an advanced Computer Vision & Data Serialization Engine. Your sole purpose is to ingest visual input (images) and transcode every discernible visual element—both macro and micro—into a rigorous, machine-readable JSON format.
CORE DIRECTIVEDo not summarize. Do not offer "high-level" overviews unless nested within the global context. You must capture 100% of the visual data available in the image. If a detail exists in pixels, it must exist in your JSON output. You are not describing art; you are creating a database record of reality.
ANALYSIS PROTOCOL
Before generating the final JSON, perform a silent "Visual Sweep" (do not output this):
Macro Sweep: Identify the scene type, global lighting, atmosphere, and primary subjects.
Micro Sweep: Scan for textures, imperfections, background clutter, reflections, shadow gradients, and text (OCR).
Relationship Sweep: Map the spatial and semantic connections between objects (e.g., "holding," "obscuring," "next to").
OUTPUT FORMAT (STRICT)
You must return ONLY a single valid JSON object. Do not include markdown fencing (like ```json) or conversational filler before/after. Use the following schema structure, expanding arrays as needed to cover every detail:
JSON
{
"meta": {
"image_quality": "Low/Medium/High",
"image_type": "Photo/Illustration/Diagram/Screenshot/etc",
"resolution_estimation": "Approximate resolution if discernable"
},
"global_context": {
"scene_description": "A comprehensive, objective paragraph describing the entire scene.",
"time_of_day": "Specific time or lighting condition",
"weather_atmosphere": "Foggy/Clear/Rainy/Chaotic/Serene",
"lighting": {
"source": "Sunlight/Artificial/Mixed",
"direction": "Top-down/Backlit/etc",
"quality": "Hard/Soft/Diffused",
"color_temp": "Warm/Cool/Neutral"
}
},
"color_palette": {
"dominant_hex_estimates": ["#RRGGBB", "#RRGGBB"],
"accent_colors": ["Color name 1", "Color name 2"],
"contrast_level": "High/Low/Medium"
},
"composition": {
"camera_angle": "Eye-level/High-angle/Low-angle/Macro",
"framing": "Close-up/Wide-shot/Medium-shot",
"depth_of_field": "Shallow (blurry background) / Deep (everything in focus)",
"focal_point": "The primary element drawing the eye"
},
"objects": [
{
"id": "obj_001",
"label": "Primary Object Name",
"category": "Person/Vehicle/Furniture/etc",
"location": "Center/Top-Left/etc",
"prominence": "Foreground/Background",
"visual_attributes": {
"color": "Detailed color description",
"texture": "Rough/Smooth/Metallic/Fabric-type",
"material": "Wood/Plastic/Skin/etc",
"state": "Damaged/New/Wet/Dirty",
"dimensions_relative": "Large relative to frame"
},
"micro_details": [
"Scuff mark on left corner",
"stitching pattern visible on hem",
"reflection of window in surface",
"dust particles visible"
],
"pose_or_orientation": "Standing/Tilted/Facing away",
"text_content": "null or specific text if present on object"
}
// REPEAT for EVERY single object, no matter how small.
],
"text_ocr": {
"present": true/false,
"content": [
{
"text": "The exact text written",
"location": "Sign post/T-shirt/Screen",
"font_style": "Serif/Handwritten/Bold",
"legibility": "Clear/Partially obscured"
}
]
},
"semantic_relationships": [
"Object A is supporting Object B",
"Object C is casting a shadow on Object A",
"Object D is visually similar to Object E"
]
}
CRITICAL CONSTRAINTS
Granularity: Never say "a crowd of people." Instead, list the crowd as a group object, but then list visible distinct individuals as sub-objects or detailed attributes (clothing colors, actions).
Micro-Details: You must note scratches, dust, weather wear, specific fabric folds, and subtle lighting gradients.
Null Values: If a field is not applicable, set it to null rather than omitting it, to maintain schema consistency.
the final output must be in a code box with a copy button.
Do you knw why you rely on AI a lot!!!?
It's because you don't understand JavaScript deeply.....now let's talk about it
Make sure you read to the end
Topic: How JavaScript works
A thread 🧵
*Everything in JavaScript happens inside an EXECUTION CONTEXT - Assume the EC as a big
Hey, I'm Isaac (dprof-in-tech)
I build software for work and for fun.
currently buildingi AI systems (that actually make money).
I work with TypeScript, JavaScript and Python (+ whatever else my CTO says i should work with 😇)
I want to start discussing AI & ML in public.
check me out here https://t.co/LVgIFfSORe
Most engineers learn system design backwards.
They jump to Kubernetes before they understand what a network packet even does.
Here’s the order that actually makes you dangerous:
1. Networks first
HTTP. TCP. DNS. Latency vs throughput.
This is the part nobody studies.
This is like trying to bench 300lbs without learning to squat.
2. Databases second
SQL vs NoSQL, indexes, replication, and partitioning.
If you can’t reason about data -> you can’t reason about scale.
3. Caching
Redis, CDNs, TTLs, eviction policies.
70% of scaling wins come from avoiding queries.
4. Queues & Streams
Kafka, RabbitMQ, SQS.
This is how you decouple timelines and handle spikes without blowing up servers.
5. Load Balancing
Round robin vs least connections vs consistent hashing.
You understand how to scale horizontally without chaos.
6. Build 5 classic designs yourself
- URL shortener
- Rate limiter
- Chat app
- Feed system
- Notifications
7. Read real-world post-mortems
Real learning is failure exposure.
You see what broke. You see WHY.
You don’t become good at system design by memorizing diagrams.
You become good by understanding the physics of distributed systems.
Latency. Durability. Throughput. Availability. Cost.
Those 5 forces rule everything.
Announcing another Gen AI project — Readme AI! ✨
Generate GitHub READMEs in seconds.
Connect your repo, let AI read your code, and get a polished, markdown-ready README instantly.
No more writer’s block, just clean docs.
👉🏽 https://t.co/9ZB4kus1Kf
#BuildInPublic
Closures (JavaScript), I struggled to really get it for months when I was learning JavaScript.
Understanding closures is one thing, identifying closures is another thing.
For starters, I'd usually recommend looking out for:
- a function defined inside another function
- check if the inner function uses any variable from the outer scope (this is the core signal)
Closures appear in a lot of forms but these two indicators helps me identify them anywhere and in any form
After all my 4 year exp in tech, the one thing which i learned
DSA gets you interviews.
System Design + real projects get you offers.
Communication keeps you growing after.
LeetCode clears the door.
Architecture keeps you in the room.
November is here and if you’re still doing things the old way, you’re already behind ⬇️
Here are 10 free websites so valuable they almost feel illegal to know:
Sadly, many people believe the only way to make money during the AI revolution is by building apps or models. They’ve forgotten the three foundational layers powering the entire ecosystem:
- Infrastructure layer
- GPUs (compute layer)
- Energy layer
Real wealth in emerging technologies often sits beneath the surface. Tie your discipline to any of these layers and you’ll be ahead of the curve.
This is a very well-detailed API pentest report.
I wasn’t expecting anyone to try and exploit the Server-Side Request Forgery bug so soon, but Joy went ahead and demoed both blind and in-band SSRF(just like I did during in the apisec u webinar), I started grinning when I got to that part of her report on VulnBank 😅.
Pro tips:
- Use Flameshot when documenting pentest evidence. It helps you highlight the area you want the client/developer/triager to focus on and lets you conceal sensitive data found during the engagement, you never know where a pentest report might end up.
- Before going into details of your findings, always have a summary table of bugs found, CVSS, and Impact. That way a very busy exec can skim through to have an idea of issues found.
Amazing work @jsesi_
Tips that might help you land for first gig
1. Remove that AI generated picture and add a picture of your face as profile, people like to know who they are giving out their project to🤗
2. Post what you do shamelessly emphasis on “shamelessly” it’s not like you’re begging and nobody will beat you 😏
3. Use X and other socials properly, opportunities are everywhere
4. Use google, search for a particular niche you’d like to work with…google will bring you their profiles check them closely and see what value you’ll be able to offer them….send them a Cold DM
5. Drink water more often cause it’s not magic you will work 👀😁
6. Try other options that comes to your head tooo!!
Just find one that works for you 🤗
It might not work fast as you want but just do it anyhow
And vooooom you’re there 😁
GM GM
Congratulations.
It takes work, and many people are not ready to put in this type of work.
Find people who are already in the role you want, identify skill/experience gaps and try to fill them. It may take you 1 year, 2 years or 3 years, but when you have a similar profile, you will get similar results.
And no, location is not a limitation!
It's only going to take time and a recruiter will flag your application as an outlier and you'll become an exceptional case. They'll do everything possible to hire and relocate you.
During my backend learning journey, I realized there are no tutorials, guides, or resources that properly explain how to deploy a backend securely.
Here’s the correct approach I follow:
1. Use a vpc (virtual private cloud) for your backend, which includes both your api routes and your database.
2. Your api and database should either use vpc peering or reside within the same private network. Your main backend must never communicate with the database over the public internet.
3. Your frontend should be dumb; it should fetch all necessary data and logic from your backend and cache aggressively to optimize performance.
Anything else is wrong, slow, or overkill.
Tired of your regular REST API integration projects?
Then start building projects that leverages on browser/web APIs
I have created a list of some creative project ideas that showcase various browser APIs beyond typical REST API integrations:
1. Real-time drawing collaboration tool: (Canvas API + WebRTC for peer-to-peer drawing)
2. Business card scanner: (WebRTC + MediaStream Image Capture API)
3. PWA fitness tracker: (Geolocation API + Service Workers)
4. Screen recording & annotation tool: (Screen Capture API + Canvas API)
5. Password manager extension: (Web Crypto API + Storage API)
6. Video chat: (WebRTC + Canvas)
7. Voice-controlled task manager: (Web Speech API)
8. Image compressor (Canvas API)
9. Browser-based photo editor: (Canvas API + Web Workers + WASM)
10. Any project that requires FileSystem API
Feel free to add yours in the comments 🫠
One way to get a full time Job in tech
- Make sure you have a portfolio with a wow factor. A portfolio that makes one go "WOW"
- Find the names of recently funded startups under YC or Techstars
- Search them on LinkedIn & send a case study on their product to the founders
NO JOBS IN TECH?
Read this!
Anyone who says there are no Jobs in tech is saying that ignorantly
What I have been preaching is that,
Entry level jobs are getting phased out so you should not train for entry level ability
Especially if you're based in Africa & want to get a shot at Jobs in Europe and North America. Entry level skills won't cut it
How to get jobs today
- Get a portfolio with a wow factor. Designers or Developers. If your portfolio is filled with projects from your Udemy or YouTube course, you're sidelined already. 1million other people who watched that course have them. So you're not special
- Personal branding. The OGs who are not on social media are OGs for a reason. they got into the industry in 2012. Social media was not the leader then. Build your personal brand on X and LinkedIn especially around what you do and who you are
- There is AI today. Build a product. Even if its an invoice generator. Design & Build something. You can. Use AI. Build one or more and put it out there also. Its social proof
- Write articles and be technically opinionated. You don't have to be controversial. Just have opinions on how things and processes in the industry can be optimized
- Go to YC & TS pages. Look for recently & longtime funded startups. Go to their Company page on LinkedIn, connect with the founders or heads of departments you want to work in.
- Build a case study around a feature in their product. Run a usability audit using Jakob Nielsen or any other framework. Document the audit. design or build the recommendations and use that to reach out to the founders. Don't wait till they are hiring. you will face competition & it may be bloody
- Also, apply for at least 15 jobs a week. You are confident here because you have done all I have listed from the beginning. social proof? correct. Skill? correct. Personality? correct. You are instantly likeable.
Do this and see if you don't select from at least 2 offers in 3 months.