teleren/devto huggingface dataset:
SQL Report Builder
Tags: mysql, lowcode, webdev, postgres
Published: 2024-05-15 17:38:05

The SQL Report builder stands as an indispensable component within the Wizard's Toolkit low-code development library. This in-depth video delves into the intricacies of crafting dynamic reports using:

- mySQL
- PostgreSQL

For developers who are adept at constructing SQL SELECT statements, this tool facilitates the generation of detailed reports with functionalities encompassing sorting, filtering, column alignment, totaling, and exporting. Seamlessly integrated with ChartJS for streamlined chart creation at a mere click.

{% youtube mr234KXTVJ0 %}

## How it Works

This low-code library is built using PHP, JavaScript, SQL, CSS and HTML5.  All are merged into the low-code environment and any SQL developer can access the back office website to enter their SQL query and choose options from drop lists, checkboxes and enter a few fields regarding which columns need alignment or totaling.  Checkboxes at the bottom determine whether charts are needed and which types of graphs to display.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mgxwnmodf0ywkbzqgxtt.png)

This SQL Report tool stores your SQL query in a SQL table named wtkReports.  A **Report Viewer** is provided to clients which allow them to see the list of reports based on their security level. Clicking on a report displays it.  Based on user preferences they may or may not be allowed to export.

## Charts and Graphs

Built on ChartJS, custom JavaScript has been written to allow switching from one type of graph to another without additional hits on the SQL database.  Graphs include:

- bar chart
- line chart
- area chart
- pie chart

All the complexity of charting is handled internally.  The SQL developer just needs to write the query, decide which (if any) columns should be suppressed from charting, and pick types of graphs to show.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cyfutfr9s3mb2bzk0xox.png)

## SQL Reports reduce Deployment Times

Depending on your work environment, adding a new report can be a tedious hassle.  The SQL developer writes the SQL query and sends it to the website developer.  They integrate it into PHP or some other language.  Then it goes to the DevOps person to deploy to staging for testing to make sure it doesn't break any other pages.  Then it is finally deployed to production.  If the client desires a minor change or enhancement it has to go back to the SQL developer, then the PHP coder, then DevOps.  Using a SQL Report Builder streamlines this process.  SQL developer writes the query and verifies it works with their SQL tools.  Then logs into back office website and pastes the query into the SQL Report Wizard and chooses features needed.  Done - no deployment "process" needed.
Should I use server-side rendering with Next.js, or would Express or Bun.js be better for scalability?
Tags: nextjs, node, bunjs, discuss
Published: 2024-05-15 17:28:38

I'm currently developing a web app and have a question about architecture and scaling. Typically, the frontend and backend are separated and run in an auto-scaling environment like AWS Elastic Beanstalk, where costs are incurred only when the system is in use. I understand that frontend assets are often stored in an object storage service like S3 to effectively manage scaling. However, in Next.js 14, where the frontend and backend are integrated, I'm concerned about the impact on efficiency and cost. Specifically, if the backend isn't in use but the frontend is, the integrated system still consumes resources because it must spin up both. Does this setup affect the efficiency and pricing compared to a configuration where the frontend and backend are separate?
How to Start From The Bottom
Tags: cybersecurity, programming, linux, logiclinux
Published: 2024-05-15 17:22:45

Embarking on a journey into the realms of cybersecurity and Linux programming can be daunting, especially when starting from scratch. My own path was filled with challenges, but it was my unwavering passion for technology and security that fueled my progress. Here’s a guide on how to start from the bottom, peppered with insights from my personal experience.

Cultivate Curiosity and Passion
My journey began with a simple curiosity about how things work. This curiosity quickly grew into a passion for understanding and securing digital environments. Passion is crucial; it keeps you motivated through the inevitable setbacks and steep learning curves.

Build a Strong Foundation
Learn the Basics of Programming:
Start with a beginner-friendly language like Python. Python’s readability and versatility make it an excellent first language for aspiring cybersecurity professionals. I spent countless hours on free resources like Codecademy and Coursera, Over the Wire challenge , Hack the Box gradually moving to more complex projects .

Understand Computer Networks:
Grasping how data moves across networks is fundamental in cybersecurity. I recommend starting with online courses on platforms like Udemy or using free resources from Cisco’s Networking Academy.

Master the Command Line:
Linux is the backbone of cybersecurity. Familiarize yourself with the Linux command line by installing a Linux distribution (Ubuntu is user-friendly for beginners) and practicing basic commands. Websites like Linux Journey and "The Linux Command Line" book by William Shotts were invaluable to me.

Dive into Cybersecurity
Basic Concepts and Terminologies:
Understanding terms like firewalls, encryption, and penetration testing is essential. Books like "The Basics of Hacking and Penetration Testing" by Patrick Engebretson provided a great starting point.
Continuous Learning and Community Engagement
Stay Updated:
Cybersecurity is ever-evolving. Follow industry blogs, podcasts, and news sites to stay abreast of the latest threats and technologies. Websites like Krebs on Security and the SANS Internet Storm Center are excellent resources.

Join Communities:
Engaging with communities can provide support and knowledge sharing. I joined forums like NSA (Net Space Albania)  and attended local cybersecurity meetups and conferences.

Have good people around you who will help you through your journey:

As for me I have met them for the first time in a discord community NSA (Net Space Albania) and they became my friends my professors . 


Apply Your Skills
Build Projects:
Practical projects solidify learning. I built my own home lab, experimenting with setting up a promox server, and simulating attacks in a controlled environment.
Learning AWS Day by Day — Day 65 — Amazon LightSail V/S Amazon EC2
Tags: aws, beginners, cloud, cloudcomputing
Published: 2024-05-15 17:19:48

Exploring AWS !!

Day 65

Amazon LightSail V/S Amazon EC2

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/giieky54ollputf91ivp.png)

Amazon LightSail — set of services designed to help you build website or applications. LightSail is to be considered when we decide building a simple platform with services like virtual servers, Load balancing, databases, container deployment service, DNS and CDN.

Amazon EC2 — provides on-demand, scalable compute capacity, allowing you to develop and deploy your application quickly. You can launch as many instances as required using images, and maintain security and networking as required.

When deciding between LightSail and EC2, consider about future requirements and what kind of AWS environment will be required. You need to think about your future workload, how much needs to be handled, and what kind of load may increase. If future deployments need advanced networking or integration, where you may need services like RDS, Lambda or DynamoDB, consider using EC2.

- Instance size varies for both, EC2–400+ instance types, from 0.5 GiB to 24 TiB of RAM, and 1 to 448 vCPUs, whereas for LightSail — 7 instance types, from 512 MiB to 32 GiB of RAM, 2 to 8 vCPUs, and 20 GB to 640 GB storage.

- Application Blueprints for EC2 — common OS and pre-configured software, LightSail — 35 pre-configured blueprints, including WordPress, Magento, Drupal, Node.js, and more.

- Containerization for EC2 — Deploy containers through servers using Docker and Kubernetes, for LightSail — simple public containers for deployment.

- Data Transfer, EC2 — pay per GB, and no cost for ingress, LightSail — Generous data transfer allocation included with the fixed monthly fee for every LightSail compute instance.

- Load Balancing, EC2 — flexible load balancing for HTTP, HTTPS, TCP or UDP, LightSail — basic load balancing for HTTP/HTTPS.

- CDN support, EC2 — CloudFront Integration, LightSail — Global content delivery from LightSail sources.

- Performance for EC2 — unlimited scaling, LightSail — Choose from 2 to 8 vCPUs (1 to 4 cores), and 512 MiB to 32 GiB memory.

- Pricing for EC2 — flexible, pay-per-use, LightSail — fixed and predictable.
Push to Multiple Repositories Simultaneously Using Git Hooks
Tags: productivity, tutorial, learning, git
Published: 2024-05-15 17:16:28

Automating repetitive tasks is crucial in software development to enhance workflow efficiency. In this article, we'll dive into leveraging git hooks to automate actions after each commit, to push to two different repositories, one in github, and another in gitea.

## What are hooks?
Hooks are scripts that git executes in response to certain events. There are various types of hooks, including pre-commit, post-commit, pre-push, and more. In git, you can use hooks to perform tasks like sending notifications, triggering builds, or updating deployments automatically after each commit. Check out [this](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks) documentation for more on hooks.

## Setting Up a Post-Commit Hook
To set up a post-commit hook in your git repository, follow these steps:

- Create a directory, say, <u>myproject</u> using `mkdir myproject`, where you will place you project files and directories.
- Navigate to the directory using `cd myproject/`, customize your development environment using the `git config --global` convention, and initialize a git repository, `git init`.
- Create the remote repositories for both gitea and github. For github, you will need to have a [PAT](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) for push authentication.

```bash
# gitea
git remote add gitea <repository-url>

# github
git remote add github https://<your-token>@github.com/<username>/<repository-name>.git

```
- After that, when you run, `git remote` you should have the following as your remote repositories:

```
gitea
github
```
- Navigate to the .git directory and create a post-commit script in the hooks directory. Note that the post-commit script doesn't have to have an extension.

```bash
cd .git/
nano hooks/post-commit
```
The nano text editor will open as in the image below:


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/owgomxqg2whbwyydxld2.png)

Write your desired actions or commands in the script. In this case, copy and paste the following:

```
# Push changes to Gitea
git push gitea master

# Push changes to GitHub
git push github master
```
The result should be as per the image below:


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f1ce6otva2w2ae0r1k5t.png)

To save your file, press **CTRL+X**, then **y**, then press **ENTER** key.

- Ensure the script has execute permissions.

```bash
chmod +x hooks/post-commit
```

- Start working on your project

```bash
# move back from the .git directory
cd ..

# work on your project
touch README.md
git add .
git commit -m "first commit"
```

So why wait? Start using hooks today and take your development workflow to the next level!

If you have any questions, concerns, or want to share your experiences with hooks, feel free to leave a comment below.

Happy coding :)
Google I/O 2024: AI Innovations and Developer Tools
Tags: ai, android
Published: 2024-05-15 16:48:11

**Google I/O 2024** showcased groundbreaking AI advancements and tools designed to empower developers. Here are the highlights:

## Gemini and Gemma Models
- **Gemini 1.5 Pro**: Now in public preview, featuring a 2 million token context window. The lightweight variant, **Gemini 1.5 Flash**, handles high-frequency tasks efficiently.
- **Gemma Updates**: New variants like **CodeGemma** for coding assistance and **Recurrent Gemma** for memory optimization. **Gemma 2** boasts a 27-billion parameter model, outperforming larger counterparts.

## Project IDX
- Now in public beta, **Project IDX** offers a cloud-based development environment with AI code completion powered by Gemini, eliminating the need for high-end hardware.

## Android & iOS
- **Gemini 1.5 Pro** in Android Studio enhances code suggestions and problem-solving.
- **Gemini Nano** offers on-device AI capabilities, prioritizing privacy and offline availability.

## Google Checks
- **Google Checks** simplifies privacy compliance with AI, ensuring apps meet regulatory standards.

## Flutter & Dart
- **Flutter 3.22** introduces stable WebAssembly support, enhancing performance. **Dart 3.4** debuts macros for code generation.

## Google Play
- **Engage SDK** and enhanced **Play Integrity API** improve app discovery and security.
- Customizable Play Store listings tailor user experiences based on search terms.

## Web Development
- **Gemini Nano** in Google Chrome aids in writing and debugging.
- New APIs, like **Speculation Rules** and **View Transitions**, enhance user experience by preloading and smooth transitions.

## Firebase
- **Firebase Genkit**: A new generative AI framework for Node.js, with Go support coming soon.
- **Vertex AI for Firebase** SDKs enable AI features in apps while ensuring security.
- **Data Connect** combines SQL performance with Firebase's ease of use.
- **Crashlytics AI Insights** provide automated crash analysis and solutions.

These updates underscore Google's commitment to integrating AI across platforms, enhancing developer tools, and ensuring robust app performance and compliance.
Nitro Enclaves application: AWS Certificate Manager for Nitro Enclaves
Published: 2024-05-15 16:47:24

You can use certificates from AWS Certificate Manager (ACM) directly with EC2. Sound shocking, right!!!!

* It’s very well known that ACM certificates integrate with: Elastic Load Balancing, Amazon CloudFront, Amazon Cognito, AWS Elastic Beanstalk, AWS App Runner or Amazon API Gateway.
 
* None of those options supports EC2 Instances directly, the only way is to provide a certificate from 3rd party vendor. Only if you used AWS Nitro Enclaves.


 * Let’s get first started with understanding what is AWS Nitro Enclaves:
Nitro Enclaves is separated VM, very hardened, extremely with no persistent storage, no interactive access, and no external networking. It uses the Nitro Hypervisor to further isolate the CPU and memory of the enclave from users, applications, and libraries on the parent EC2 instance.
Nitro Enclaves are used with applications that process highly sensitive data, personal identifiable information,….

* Since AWS Nitro Enclaves enables the creation of an isolated compute environments SSL/TLS private keys can be securely stored, this allows the seamless integration between ACM and Nitro Enclaves without risk of keys exposure since no user/application can view or export those keys.

* ACM for Nitro Enclaves supports NGINX servers and Apache HTTP servers. 

* No cost is associated with using ACM for Nitro Enclaves.

To learn more:
https://lnkd.in/gybjgRTt
https://lnkd.in/g9hmjXbW.
How to make your GitHub profile stand out.
Tags: beginners, tutorial, codenewbie, github
Published: 2024-05-15 16:45:41

## What is GitHub?
GitHub is a platform where developer create, store, manage and share their code.

## Why GitHub profile matters?
Every developer across the world use GitHub to contribute, share their code with others. And when you'll be working with others, you need a GitHub account. Employers see the candidate GitHub profile to have an idea about candidate skills and projects. So, it is a vital tool in today's tech world.

## So, How to make a great GitHub Profile?
There are few steps to it. See below 👇🏻 

1. Build projects and share it with GitHub. There are tons of resources online that will teach you how to share your code with GitHub.
2. In every project, create a README.md file to share something about your code like what did you learn, what tools you used or anything. For further information search Google.
3. Update your Profile Picture and bio and other relevant fields.
4. Use a GitHub profile generator to build your Profile README.md, it will make your profile look good. Here is the link - [profile-readme-generator](https://rahuldkjain.github.io/gh-profile-readme-generator/)

Happy Learning 🎉
keep building.
Tags: buildinpublic, swift, indie, ios
Published: 2024-05-15 16:33:00

Another update.

I got to keep building. Ship more.

Another app completed. The idea is to build a variety of different apps using different skills that will help me build MoFoods. I'm learning a lot and the speed at which I'm able to build a basic MVP of my ideas is getting better. It doesn't have to be perfect, it just has to work. I'm done with the days of spending time researching, designing, etc. I'm spending way too much time thinking of great ideas instead just building. I wasted a lot of time doing that when I was studying CS. Now I'm going to make up for lost time by shipping more.

OpenAI just announced ChatGPT 4o and it's insane. It was also recently announced that Apple and OpenAI have agreed on a partnership to use the AI model in their devices. This is exciting news because now I'm wondering what Apple is going to share at WWDC24. The only thing I'm thinking about is combining the Vision Pro with ChatGPT 4o. So I'm rushing to get all these ideas in my head out so I can shift gears to what I think is dope idea for the Vision Pro. I'll let you know once I'm ready. 😉

2024 is already a huge year for AI compared to the insane hype of 2023. With all the use cases of chatGPT and developers seemingly getting their ideas replaced on Product Hunt by it it's making me wonder, what do you build during times like this?
Bleepr -Your Friendly Hub for Team-Fueled Prototyping
Tags: productivity, webdev, programming, opensource
Published: 2024-05-15 16:23:22

Hey fellow coders, ready to take your projects to the next level? Meet Bleepr – the platform that's about to revolutionize how you code, collaborate, and create.

Here's the deal: Bleepr isn't your run-of-the-mill coding site. Sure, you can write your HTML, CSS, and JavaScript like a pro, but with Bleepr, you're not flying solo. Nope, this is where the magic of collaboration kicks in.

> Imagine this: You're hammering away at your latest project, tweaking lines of code here and there, when suddenly, inspiration strikes. But instead of going it alone, you invite your coding buddies to join you. Before you know it, you're bouncing ideas off each other, sharing snippets of code, and solving problems together in real-time. It's like pair programming on steroids – and it's all happening right here on Bleepr.

But hold on, it gets better. Bleepr isn't just about teamwork – it's also designed to supercharge your productivity. With a sleek interface, lightning-fast performance, and a whole arsenal of tools at your disposal, you'll wonder how you ever managed without it. And with features like built-in version control and project management, staying organized is a breeze.

Oh, and did we mention privacy? Yeah, we've got that covered too. Our privacy policy (check it out at [bleepr.cc/privacy](https://bleepr.cc/privacy)) spells out exactly how we keep your data safe and sound, so you can focus on what you do best – coding up a storm.

So, what are you waiting for? Come join the Bleepr beta and experience the future of coding collaboration. Head over to [bleepr.cc](https://bleepr.cc) to sign up for early access – trust us, you won't regret it. Let's code better, together, with Bleepr.
Day 14: Callback
Tags: webdev, javascript, programming, blockchain
Published: 2024-05-15 16:03:24

Another day, another level unlocked. Today I delved deeper into the rabbit hole of JavaScript, a world built on logic and manipulation. First up, these things called callback functions. They sound simple enough - functions you pass to other functions, waiting to be called back at some point. But there's a twist, like there always is in this game. These callbacks can be asynchronous, meaning they might not happen right away. It's all about control flow, man. You gotta keep track of when things fire, or you'll end up in a never-ending loop, lost in a code maze.

Then there are higher-order functions. These are the real bosses, the ones that take other functions as arguments and can even return functions. It's like building functions on top of functions, creating a whole hierarchy of control. Feels a bit like how corporations work, these layers of power and delegation. But hey, at least with code, you're the one calling the shots (most of the time).

Speaking of control, closures came up today too. These are like little self-contained ecosystems within your code. A function can access variables outside its scope, creating a hidden memory stash. It's useful, sure, but it can also get messy if you're not careful. Like that friend who keeps bringing up embarrassing childhood stories - closures can come back to bite you if you're not mindful.

Finally, we have the strings, the building blocks of text in this digital world. Splitting, searching, replacing - all these tools to manipulate the data flow. It's like playing with words, but with a purpose. Gotta be able to parse through the information, extract what you need, and build something new with it. Reminds me of those childhood code-cracking puzzles, deciphering messages with hidden meanings.

This whole coding thing is starting to feel a bit like hacking reality, bending it to your will with the right tools and commands. Just gotta be careful - with great power comes the risk of glitches and unintended consequences. I'm hoping to build something new, not tear it all down. One day at a time, one function at a time. Let's see what tomorrow brings.
Unveiling GPT-4: A Leap Forward in AI-Language Models
Tags: ai
Published: 2024-05-15 15:58:59

OpenAI's latest release, GPT-4, marks a significant advancement in natural language processing. Building on previous versions, GPT-4 enhances accuracy, reliability, and versatility, making interactions with AI more natural and engaging.

**Key Improvements**
Enhanced Understanding and Generation: GPT-4 excels in understanding context and nuance, providing more coherent and contextually relevant responses. This is crucial for applications in customer service, content creation, and information retrieval.

Increased Reliability and Safety: OpenAI has focused on minimizing biases and reducing harmful content generation. Advanced monitoring systems ensure responsible deployment, maintaining high ethical standards.

Versatility and Adaptability: GPT-4 caters to diverse use cases, supporting various domains and styles. Its improved multilingual capabilities enhance global accessibility and usability.

**Empowering Developers**
GPT-4 offers powerful tools for developers, including enhanced API integrations and comprehensive documentation. New features, like granular control over text generation and improved performance metrics, allow for more tailored solutions.

**Looking Ahead**
GPT-4 sets a new standard for AI language models, combining advanced capabilities with a strong commitment to safety. It empowers the developer community to push the boundaries of AI, paving the way for innovative and impactful applications.

OpenAI's GPT-4 is a testament to the progress in AI, offering exciting possibilities for the future. Whether you're an AI expert or a newcomer, GPT-4 provides the resources to explore and innovate.