#scope in software testing
Explore tagged Tumblr posts
Text
In the dynamic and ever-evolving world of software development, ensuring the quality and reliability of applications is paramount. This necessity underscores the significance of software testing, which has grown into a critical component of the development lifecycle. With the increasing demand for high-quality software, the scope of software testing has expanded, offering numerous career opportunities. This comprehensive guide explores the career options after software testing training, delving into the various roles, required skills, and the promising future of a career in software testing.
0 notes
Text
In today's technology-driven world, ensuring the quality and reliability of software applications is more critical than ever. With the increasing complexity of software systems, the need for thorough testing has never been greater. This demand has led to a significant rise in the importance and scope of software testing as a profession. But is a career in software testing a good choice? This comprehensive guide delves into the scope of software testing, the opportunities available, and the potential career paths, helping you make an informed decision.
#career in software testing#software testing career#scope of software testing#software testing scope
0 notes
Text
Neural Filters Tutorial for Gifmakers by @antoniosvivaldi
Hi everyone! In light of my blog’s 10th birthday, I’m delighted to reveal my highly anticipated gifmaking tutorial using Neural Filters - a very powerful collection of filters that really broadened my scope in gifmaking over the past 12 months.
Before I get into this tutorial, I want to thank @laurabenanti, @maines , @cobbbvanth, and @cal-kestis for their unconditional support over the course of my journey of investigating the Neural Filters & their valuable inputs on the rendering performance!
In this tutorial, I will outline what the Photoshop Neural Filters do and how I use them in my workflow - multiple examples will be provided for better clarity. Finally, I will talk about some known performance issues with the filters & some feasible workarounds.
Tutorial Structure:
Meet the Neural Filters: What they are and what they do
Why I use Neural Filters? How I use Neural Filters in my giffing workflow
Getting started: The giffing workflow in a nutshell and installing the Neural Filters
Applying Neural Filters onto your gif: Making use of the Neural Filters settings; with multiple examples
Testing your system: recommended if you’re using Neural Filters for the first time
Rendering performance: Common Neural Filters performance issues & workarounds
For quick reference, here are the examples that I will show in this tutorial:
Example 1: Image Enhancement | improving the image quality of gifs prepared from highly compressed video files
Example 2: Facial Enhancement | enhancing an individual's facial features
Example 3: Colour Manipulation | colourising B&W gifs for a colourful gifset
Example 4: Artistic effects | transforming landscapes & adding artistic effects onto your gifs
Example 5: Putting it all together | my usual giffing workflow using Neural Filters
What you need & need to know:
Software: Photoshop 2021 or later (recommended: 2023 or later)*
Hardware: 8GB of RAM; having a supported GPU is highly recommended*
Difficulty: Advanced (requires a lot of patience); knowledge in gifmaking and using video timeline assumed
Key concepts: Smart Layer / Smart Filters
Benchmarking your system: Neural Filters test files**
Supplementary materials: Tutorial Resources / Detailed findings on rendering gifs with Neural Filters + known issues***
*I primarily gif on an M2 Max MacBook Pro that's running Photoshop 2024, but I also have experiences gifmaking on few other Mac models from 2012 ~ 2023.
**Using Neural Filters can be resource intensive, so it’s helpful to run the test files yourself. I’ll outline some known performance issues with Neural Filters and workarounds later in the tutorial.
***This supplementary page contains additional Neural Filters benchmark tests and instructions, as well as more information on the rendering performance (for Apple Silicon-based devices) when subject to heavy Neural Filters gifmaking workflows
Tutorial under the cut. Like / Reblog this post if you find this tutorial helpful. Linking this post as an inspo link will also be greatly appreciated!
1. Meet the Neural Filters!
Neural Filters are powered by Adobe's machine learning engine known as Adobe Sensei. It is a non-destructive method to help streamline workflows that would've been difficult and/or tedious to do manually.
Here are the Neural Filters available in Photoshop 2024:
Skin Smoothing: Removes blemishes on the skin
Smart Portrait: This a cloud-based filter that allows you to change the mood, facial age, hair, etc using the sliders+
Makeup Transfer: Applies the makeup (from a reference image) to the eyes & mouth area of your image
Landscape Mixer: Transforms the landscape of your image (e.g. seasons & time of the day, etc), based on the landscape features of a reference image
Style Transfer: Applies artistic styles e.g. texturings (from a reference image) onto your image
Harmonisation: Applies the colour balance of your image based on the lighting of the background image+
Colour Transfer: Applies the colour scheme (of a reference image) onto your image
Colourise: Adds colours onto a B&W image
Super Zoom: Zoom / crop an image without losing resolution+
Depth Blur: Blurs the background of the image
JPEG Artefacts Removal: Removes artefacts caused by JPEG compression
Photo Restoration: Enhances image quality & facial details
+These three filters aren't used in my giffing workflow. The cloud-based nature of Smart Portrait leads to disjointed looking frames. For Harmonisation, applying this on a gif causes Neural Filter timeout error. Finally, Super Zoom does not currently support output as a Smart Filter
If you're running Photoshop 2021 or earlier version of Photoshop 2022, you will see a smaller selection of Neural Filters:
Things to be aware of:
You can apply up to six Neural Filters at the same time
Filters where you can use your own reference images: Makeup Transfer (portraits only), Landscape Mixer, Style Transfer (not available in Photoshop 2021), and Colour Transfer
Later iterations of Photoshop 2023 & newer: The first three default presets for Landscape Mixer and Colour Transfer are currently broken.
2. Why I use Neural Filters?
Here are my four main Neural Filters use cases in my gifmaking process. In each use case I'll list out the filters that I use:
Enhancing Image Quality:
Common wisdom is to find the highest quality video to gif from for a media release & avoid YouTube whenever possible. However for smaller / niche media (e.g. new & upcoming musical artists), prepping gifs from highly compressed YouTube videos is inevitable.
So how do I get around with this? I have found Neural Filters pretty handy when it comes to both correcting issues from video compression & enhancing details in gifs prepared from these highly compressed video files.
Filters used: JPEG Artefacts Removal / Photo Restoration
Facial Enhancement:
When I prepare gifs from highly compressed videos, something I like to do is to enhance the facial features. This is again useful when I make gifsets from compressed videos & want to fill up my final panel with a close-up shot.
Filters used: Skin Smoothing / Makeup Transfer / Photo Restoration (Facial Enhancement slider)
Colour Manipulation:
Neural Filters is a powerful way to do advanced colour manipulation - whether I want to quickly transform the colour scheme of a gif or transform a B&W clip into something colourful.
Filters used: Colourise / Colour Transfer
Artistic Effects:
This is one of my favourite things to do with Neural Filters! I enjoy using the filters to create artistic effects by feeding textures that I've downloaded as reference images. I also enjoy using these filters to transform the overall the atmosphere of my composite gifs. The gifsets where I've leveraged Neural Filters for artistic effects could be found under this tag on usergif.
Filters used: Landscape Mixer / Style Transfer / Depth Blur
How I use Neural Filters over different stages of my gifmaking workflow:
I want to outline how I use different Neural Filters throughout my gifmaking process. This can be roughly divided into two stages:
Stage I: Enhancement and/or Colourising | Takes place early in my gifmaking process. I process a large amount of component gifs by applying Neural Filters for enhancement purposes and adding some base colourings.++
Stage II: Artistic Effects & more Colour Manipulation | Takes place when I'm assembling my component gifs in the big PSD / PSB composition file that will be my final gif panel.
I will walk through this in more detail later in the tutorial.
++I personally like to keep the size of the component gifs in their original resolution (a mixture of 1080p & 4K), to get best possible results from the Neural Filters and have more flexibility later on in my workflow. I resize & sharpen these gifs after they're placed into my final PSD composition files in Tumblr dimensions.
3. Getting started
The essence is to output Neural Filters as a Smart Filter on the smart object when working with the Video Timeline interface. Your workflow will contain the following steps:
Prepare your gif
In the frame animation interface, set the frame delay to 0.03s and convert your gif to the Video Timeline
In the Video Timeline interface, go to Filter > Neural Filters and output to a Smart Filter
Flatten or render your gif (either approach is fine). To flatten your gif, play the "flatten" action from the gif prep action pack. To render your gif as a .mov file, go to File > Export > Render Video & use the following settings.
Setting up:
o.) To get started, prepare your gifs the usual way - whether you screencap or clip videos. You should see your prepared gif in the frame animation interface as follows:
Note: As mentioned earlier, I keep the gifs in their original resolution right now because working with a larger dimension document allows more flexibility later on in my workflow. I have also found that I get higher quality results working with more pixels. I eventually do my final sharpening & resizing when I fit all of my component gifs to a main PSD composition file (that's of Tumblr dimension).
i.) To use Smart Filters, convert your gif to a Smart Video Layer.
As an aside, I like to work with everything in 0.03s until I finish everything (then correct the frame delay to 0.05s when I upload my panels onto Tumblr).
For convenience, I use my own action pack to first set the frame delay to 0.03s (highlighted in yellow) and then convert to timeline (highlighted in red) to access the Video Timeline interface. To play an action, press the play button highlighted in green.
Once you've converted this gif to a Smart Video Layer, you'll see the Video Timeline interface as follows:
ii.) Select your gif (now as a Smart Layer) and go to Filter > Neural Filters
Installing Neural Filters:
Install the individual Neural Filters that you want to use. If the filter isn't installed, it will show a cloud symbol (highlighted in yellow). If the filter is already installed, it will show a toggle button (highlighted in green)
When you toggle this button, the Neural Filters preview window will look like this (where the toggle button next to the filter that you use turns blue)
4. Using Neural Filters
Once you have installed the Neural Filters that you want to use in your gif, you can toggle on a filter and play around with the sliders until you're satisfied. Here I'll walkthrough multiple concrete examples of how I use Neural Filters in my giffing process.
Example 1: Image enhancement | sample gifset
This is my typical Stage I Neural Filters gifmaking workflow. When giffing older or more niche media releases, my main concern is the video compression that leads to a lot of artefacts in the screencapped / video clipped gifs.
To fix the artefacts from compression, I go to Filter > Neural Filters, and toggle JPEG Artefacts Removal filter. Then I choose the strength of the filter (boxed in green), output this as a Smart Filter (boxed in yellow), and press OK (boxed in red).
Note: The filter has to be fully processed before you could press the OK button!

After applying the Neural Filters, you'll see "Neural Filters" under the Smart Filters property of the smart layer
Flatten / render your gif
Example 2: Facial enhancement | sample gifset
This is my routine use case during my Stage I Neural Filters gifmaking workflow. For musical artists (e.g. Maisie Peters), YouTube is often the only place where I'm able to find some videos to prepare gifs from. However even the highest resolution video available on YouTube is highly compressed.
Go to Filter > Neural Filters and toggle on Photo Restoration. If Photoshop recognises faces in the image, there will be a "Facial Enhancement" slider under the filter settings.
Play around with the Photo Enhancement & Facial Enhancement sliders. You can also expand the "Adjustment" menu make additional adjustments e.g. remove noises and reducing different types of artefacts.
Once you're happy with the results, press OK and then flatten / render your gif.
Example 3: Colour Manipulation | sample gifset
Want to make a colourful gifset but the source video is in B&W? This is where Colourise from Neural Filters comes in handy! This same colourising approach is also very helpful for colouring poor-lit scenes as detailed in this tutorial.
Here's a B&W gif that we want to colourise:
Highly recommended: add some adjustment layers onto the B&W gif to improve the contrast & depth. This will give you higher quality results when you colourise your gif.
Go to Filter > Neural Filters and toggle on Colourise.
Make sure "Auto colour image" is enabled.
Play around with further adjustments e.g. colour balance, until you're satisfied then press OK.
Important: When you colourise a gif, you need to double check that the resulting skin tone is accurate to real life. I personally go to Google Images and search up photoshoots of the individual / character that I'm giffing for quick reference.
Add additional adjustment layers until you're happy with the colouring of the skin tone.
Once you're happy with the additional adjustments, flatten / render your gif. And voila!
Note: For Colour Manipulation, I use Colourise in my Stage I workflow and Colour Transfer in my Stage II workflow to do other types of colour manipulations (e.g. transforming the colour scheme of the component gifs)
Example 4: Artistic Effects | sample gifset
This is where I use Neural Filters for the bulk of my Stage II workflow: the most enjoyable stage in my editing process!
Normally I would be working with my big composition files with multiple component gifs inside it. To begin the fun, drag a component gif (in PSD file) to the main PSD composition file.
Resize this gif in the composition file until you're happy with the placement
Duplicate this gif. Sharpen the bottom layer (highlighted in yellow), and then select the top layer (highlighted in green) & go to Filter > Neural Filters
I like to use Style Transfer and Landscape Mixer to create artistic effects from Neural Filters. In this particular example, I've chosen Landscape Mixer
Select a preset or feed a custom image to the filter (here I chose a texture that I've on my computer)
Play around with the different sliders e.g. time of the day / seasons
Important: uncheck "Harmonise Subject" & "Preserve Subject" - these two settings are known to cause performance issues when you render a multiframe smart object (e.g. for a gif)
Once you're happy with the artistic effect, press OK
To ensure you preserve the actual subject you want to gif (bc Preserve Subject is unchecked), add a layer mask onto the top layer (with Neural Filters) and mask out the facial region. You might need to play around with the Layer Mask Position keyframes or Rotoscope your subject in the process.
After you're happy with the masking, flatten / render this composition file and voila!
Example 5: Putting it all together | sample gifset
Let's recap on the Neural Filters gifmaking workflow and where Stage I and Stage II fit in my gifmaking process:
i. Preparing & enhancing the component gifs
Prepare all component gifs and convert them to smart layers
Stage I: Add base colourings & apply Photo Restoration / JPEG Artefacts Removal to enhance the gif's image quality
Flatten all of these component gifs and convert them back to Smart Video Layers (this process can take a lot of time)
Some of these enhanced gifs will be Rotoscoped so this is done before adding the gifs to the big PSD composition file
ii. Setting up the big PSD composition file
Make a separate PSD composition file (Ctrl / Cmmd + N) that's of Tumblr dimension (e.g. 540px in width)
Drag all of the component gifs used into this PSD composition file
Enable Video Timeline and trim the work area
In the composition file, resize / move the component gifs until you're happy with the placement & sharpen these gifs if you haven't already done so
Duplicate the layers that you want to use Neural Filters on
iii. Working with Neural Filters in the PSD composition file
Stage II: Neural Filters to create artistic effects / more colour manipulations!
Mask the smart layers with Neural Filters to both preserve the subject and avoid colouring issues from the filters
Flatten / render the PSD composition file: the more component gifs in your composition file, the longer the exporting will take. (I prefer to render the composition file into a .mov clip to prevent overriding a file that I've spent effort putting together.)
Note: In some of my layout gifsets (where I've heavily used Neural Filters in Stage II), the rendering time for the panel took more than 20 minutes. This is one of the rare instances where I was maxing out my computer's memory.
Useful things to take note of:
Important: If you're using Neural Filters for Colour Manipulation or Artistic Effects, you need to take a lot of care ensuring that the skin tone of nonwhite characters / individuals is accurately coloured
Use the Facial Enhancement slider from Photo Restoration in moderation, if you max out the slider value you risk oversharpening your gif later on in your gifmaking workflow
You will get higher quality results from Neural Filters by working with larger image dimensions: This gives Neural Filters more pixels to work with. You also get better quality results by feeding higher resolution reference images to the Neural Filters.
Makeup Transfer is more stable when the person / character has minimal motion in your gif
You might get unexpected results from Landscape Mixer if you feed a reference image that don't feature a distinctive landscape. This is not always a bad thing: for instance, I have used this texture as a reference image for Landscape Mixer, to create the shimmery effects as seen in this gifset
5. Testing your system
If this is the first time you're applying Neural Filters directly onto a gif, it will be helpful to test out your system yourself. This will help:
Gauge the expected rendering time that you'll need to wait for your gif to export, given specific Neural Filters that you've used
Identify potential performance issues when you render the gif: this is important and will determine whether you will need to fully playback your gif before flattening / rendering the file.
Understand how your system's resources are being utilised: Inputs from Windows PC users & Mac users alike are welcome!
About the Neural Filters test files:
Contains six distinct files, each using different Neural Filters
Two sizes of test files: one copy in full HD (1080p) and another copy downsized to 540px
One folder containing the flattened / rendered test files
How to use the Neural Filters test files:
What you need:
Photoshop 2022 or newer (recommended: 2023 or later)
Install the following Neural Filters: Landscape Mixer / Style Transfer / Colour Transfer / Colourise / Photo Restoration / Depth Blur
Recommended for some Apple Silicon-based MacBook Pro models: Enable High Power Mode
How to use the test files:
For optimal performance, close all background apps
Open a test file
Flatten the test file into frames (load this action pack & play the “flatten” action)
Take note of the time it takes until you’re directed to the frame animation interface
Compare the rendered frames to the expected results in this folder: check that all of the frames look the same. If they don't, you will need to fully playback the test file in full before flattening the file.†
Re-run the test file without the Neural Filters and take note of how long it takes before you're directed to the frame animation interface
Recommended: Take note of how your system is utilised during the rendering process (more info here for MacOS users)
†This is a performance issue known as flickering that I will discuss in the next section. If you come across this, you'll have to playback a gif where you've used Neural Filters (on the video timeline) in full, prior to flattening / rendering it.
Factors that could affect the rendering performance / time (more info):
The number of frames, dimension, and colour bit depth of your gif
If you use Neural Filters with facial recognition features, the rendering time will be affected by the number of characters / individuals in your gif
Most resource intensive filters (powered by largest machine learning models): Landscape Mixer / Photo Restoration (with Facial Enhancement) / and JPEG Artefacts Removal
Least resource intensive filters (smallest machine learning models): Colour Transfer / Colourise
The number of Neural Filters that you apply at once / The number of component gifs with Neural Filters in your PSD file
Your system: system memory, the GPU, and the architecture of the system's CPU+++
+++ Rendering a gif with Neural Filters demands a lot of system memory & GPU horsepower. Rendering will be faster & more reliable on newer computers, as these systems have CPU & GPU with more modern instruction sets that are geared towards machine learning-based tasks.
Additionally, the unified memory architecture of Apple Silicon M-series chips are found to be quite efficient at processing Neural Filters.
6. Performance issues & workarounds
Common Performance issues:
I will discuss several common issues related to rendering or exporting a multi-frame smart object (e.g. your composite gif) that uses Neural Filters below. This is commonly caused by insufficient system memory and/or the GPU.
Flickering frames: in the flattened / rendered file, Neural Filters aren't applied to some of the frames+-+
Scrambled frames: the frames in the flattened / rendered file isn't in order
Neural Filters exceeded the timeout limit error: this is normally a software related issue
Long export / rendering time: long rendering time is expected in heavy workflows
Laggy Photoshop / system interface: having to wait quite a long time to preview the next frame on the timeline
Issues with Landscape Mixer: Using the filter gives ill-defined defined results (Common in older systems)--
Workarounds:
Workarounds that could reduce unreliable rendering performance & long rendering time:
Close other apps running in the background
Work with smaller colour bit depth (i.e. 8-bit rather than 16-bit)
Downsize your gif before converting to the video timeline-+-
Try to keep the number of frames as low as possible
Avoid stacking multiple Neural Filters at once. Try applying & rendering the filters that you want one by one
Specific workarounds for specific issues:
How to resolve flickering frames: If you come across flickering, you will need to playback your gif on the video timeline in full to find the frames where the filter isn't applied. You will need to select all of the frames to allow Photoshop to reprocess these, before you render your gif.+-+
What to do if you come across Neural Filters timeout error? This is caused by several incompatible Neural Filters e.g. Harmonisation (both the filter itself and as a setting in Landscape Mixer), Scratch Reduction in Photo Restoration, and trying to stack multiple Neural Filters with facial recognition features.
If the timeout error is caused by stacking multiple filters, a feasible workaround is to apply the Neural Filters that you want to use one by one over multiple rendering sessions, rather all of them in one go.
+-+This is a very common issue for Apple Silicon-based Macs. Flickering happens when a gif with Neural Filters is rendered without being previously played back in the timeline.
This issue is likely related to the memory bandwidth & the GPU cores of the chips, because not all Apple Silicon-based Macs exhibit this behaviour (i.e. devices equipped with Max / Ultra M-series chips are mostly unaffected).
-- As mentioned in the supplementary page, Landscape Mixer requires a lot of GPU horsepower to be fully rendered. For older systems (pre-2017 builds), there are no workarounds other than to avoid using this filter.
-+- For smaller dimensions, the size of the machine learning models powering the filters play an outsized role in the rendering time (i.e. marginal reduction in rendering time when downsizing 1080p file to Tumblr dimensions). If you use filters powered by larger models e.g. Landscape Mixer and Photo Restoration, you will need to be very patient when exporting your gif.
7. More useful resources on using Neural Filters
Creating animations with Neural Filters effects | Max Novak
Using Neural Filters to colour correct by @edteachs
I hope this is helpful! If you have any questions or need any help related to the tutorial, feel free to send me an ask 💖
#photoshop tutorial#gif tutorial#dearindies#usernik#useryoshi#usershreyu#userisaiah#userroza#userrobin#userraffa#usercats#userriel#useralien#userjoeys#usertj#alielook#swearphil#*#my resources#my tutorials
545 notes
·
View notes
Text
Writing Notes: Cookbook

Whether you want to turn your own recipes into a cookbook as a family keepsake, or work with a publisher to get the most viral recipes from your blog onto paper and into bookstores, making a cookbook is often a fun but work-intensive process.
How to Make a Cookbook
The process of making a cookbook will depend on your publishing route, but in general you’ll need to work through the following steps:
Concept: The first step of making a cookbook is to figure out what kind of cookbook this will be. Your cookbook can focus on a single ingredient, meal, region, or culture. It can be an educational tome for beginners, or a slapdash collection of family favorites for your relatives. If you’re looking to get your cookbook published, a book proposal is a necessary step towards getting a book deal, and can also help you pin down your concept.
Compile recipes: If you’ve been dreaming of writing a cookbook, chances are you probably already know some recipes that have to be included. Make a list of those important recipes and use that as a jumping-off point to brainstorm how your cookbook will be organized and what other recipes need to be developed. If you’re compiling a community cookbook, reach out to your community members and assemble their recipes.
Outline: Based on your guiding concept and key recipes, make a rough table of contents. Possibly the most common way to divide a cookbook is into meals (appetizers, breakfast, lunch, dinner) but cookbooks can also be divided by season, raw ingredients (vegetables, fish, beef), cooking techniques, or some other narrative structure.
Recipe development: Flesh out your structure by developing beyond your core recipes, if needed, and fine-tuning those recipes which need a bit more work.
Recipe testing: Hire recipe testers, or enlist your friends and family, to test out your recipes in their home kitchens. Have them let you know what worked and didn’t work, or what was confusing.
Write the surrounding material: Most cookbooks include some writing other than the recipes. This may include chapter introductions and blurbs for each recipe.
Photography and layout: If your book includes photography, at some point there will be photo shoots where the food will have to be prepared and styled for camera. Traditional publishing houses will likely want to hire stylists and photographers who specialize in food photography. Once the images and text are both ready, a book designer will arrange them together and make the cover design, but you can also make your own cookbook design using software like InDesign or old-school DIY-style, with paper, scissors, and a photocopier.
Editing: If you’re working with a publisher, there may be several rounds of back and forth as your editor works with you to fine-tune the recipes and text. The book will then be sent to a copy editor who will go through the entire cookbook looking for grammar and style issues, and indexer for finishing touches. If you’re self-publishing, give a rough draft of your book to friends and family members to proofread.
Printing: After everything is laid out and approved, your cookbook is ready to be printed. If you’re printing your cookbook yourself, you can go to a copy shop to get it spiral bound, or send it off to a printer for more options.
Common Types of Cookbooks
More so than any other kind of nonfiction book, cookbooks lend themselves to self-publishing. Of course, cookbook publishing is also a huge industry, and a professional publisher might be the best route for your book depending on the scope and your reach as a chef.
Self-published: This is a cookbook made of up your own recipes, which you might give as gifts to family and friends. You can easily self-publish a cookbook online as an individual. But if having a print book is important to you, there are many options. You can print and staple together a short cookbook, zine-style. Many copy shops will also offer options for wire-bound cookbooks, and there are resources online that will print bookstore-quality softcover or hard-cover books for a fee.
Community cookbooks: A special subset of self-published cookbook made up of recipes from multiple individuals, usually to raise money for a cause or organization. Working with a group has the advantage of a large pool of recipes and testers, and is a great way to share your recipes with a larger audience while also supporting a cause you believe in.
Through a publishing house: If you think your cookbook has a wider audience, you may want to seek out a mainstream publishing house. Get a literary agent who can to publishers who can connect you with publishers who are interested in your cookbook. Large publishing houses don’t usually accept pitches from individuals, but you can reach out to small, local publishers without an agent as intermediary. To publish a cookbook through a publishing house, you’ll typically need a book proposal outlining your concept, audience, and budget.
Things to Consider Before Making a Cookbook
Before embarking on your cookbook project, it’s a good idea to get organized, and to figure out what kind of cookbook you want to make.
Photography: More so than other texts, cookbooks often include visual accompaniment. Beautiful pages of full-color photos are expensive, which is one reason publishers like to work with bloggers who can style and photograph their own food. Not all cookbooks need photos, however. Some of the most iconic cookbooks rely on illustrations, or words alone. Figure out what role, if any, visuals will play in your book.
Audience: Are you turning recipe cards into a keepsake family cookbook, or selling this cookbook nationwide? Your intended audience will greatly influence how you write and publish your cookbook, whether it’s vegans, college students, or owners of pressure cookers. You’ll need to consider your audience’s cooking skill level, desires, and where they buy their food.
Budget: Once you have a vision for what you want your cookbook to be, budget your time and resources. Do you need help to make this book? The answer is probably yes. Assemble a team of people who understand your vision and know what kind of commitment will be involved.
Source ⚜ More: Notes & References ⚜ Writing Resources PDFs
#cookbook#nonfiction#writing reference#writing tips#writeblr#dark academia#literature#writers on tumblr#spilled ink#writing prompt#light academia#writing ideas#writing inspiration#writing resources
48 notes
·
View notes
Text
A transgender woman who sued a women-only social media app for alleged gender discrimination has been awarded $10,000 plus costs after a judge found she had been indirectly discriminated against in a landmark decision that tested the meaning and scope of the Sex Discrimination Act.
Roxanne Tickle, a transgender woman from regional New South Wales, sued the women-only social media platform Giggle for Girls and its CEO, Sall Grover, claiming she was unlawfully barred from using the app in 2021 after the firm and Grover said she was a man.
On Friday morning, federal court justice Robert Bromwich said the respondents considered “sex” to mean the unchangeable sex of a person at birth.
“These arguments failed because the view propounded by the respondents conflicted with a long history of cases decided by courts going back over 30 years. Those … cases established that on its ordinary meaning sex is changeable,” he said.
Onboarding to the app required the user to upload a selfie verified as female by KairosAI gender detection software and then by Grover. Tickle was barred after initially being allowed to join the platform – which was shut down in August 2022.
The judge said the evidence did not establish Tickle was excluded from Giggle directly “by reason of her gender identity although it remains possible that this was the real but unproven reason”. Rather, the indirect discrimination case succeeded because Tickle was excluded from the use of the social media app “because she did not look sufficiently female”.
Bromwich disagreed with Grover and Giggle’s arguments about the constitutionality of the protections for gender identity in the Act – in line with the position of the sex discrimination commissioner.
Tickle had sought damages and aggravated damages amounting to $200,000, claiming that persistent misgendering by Grover resulted in constant anxiety and occasional suicidal thoughts.
In his written decision, Bromwich drew attention to the behaviour of Grover, including laughing at a caricature of Tickle during the trial.
“[Grover’s] explanation, that it was funny in the context of the courtroom, was obviously disingenuous. It was offensive and belittling and had no legitimate place in the respondents prosecuting their case.”
Tickle said Friday’s decision showed transgender people could stand up for themselves.
“I’m pleased by the outcome of my case and I hope it is healing for trans and gender diverse people. The ruling shows that all women are protected from discrimination,” she said outside court.
“I brought my case to show trans people that you can be brave and you can stand up for yourself. I can now get on with the rest of my life and have a coffee down the road with my friends, play hockey with my team and put this horribleness behind me.”
Changes to the Sex Discrimination Act in 2013 made it unlawful under federal law to discriminate against a person on the basis of sexual orientation, gender identity or intersex status.
It is the first time alleged gender identity discrimination has been heard by Australia’s federal court and goes to the heart of how gender identity – and being a woman - is interpreted. The outcome is likely to have wide-reaching implications for male and female spaces and activities and is being watched around the world.
Over the course of a three-day hearing in April, the court heard that Tickle had lived as a woman since 2017, had a female birth certificate and gender affirmation surgery and “feels in her mind that psychologically she is a woman”.
Tickle’s barrister Georgina Costello KC said that “Ms Tickle is a woman” but that “the respondents flatly deny that fact”.
Giggle and Grover’s team asserted that the case must focus on biological sex.
“Sex is discriminatory, it always has been and always will be … biological sex must prevail,” barrister Bridie Nolan said.
Grover told the court that she would not address Tickle as “Ms” and that, even if a transgender woman presented as female, had gender affirmation surgery, lived as a female and held female identity documents, Grover would still see her as a “biological male”.
The court heard that Grover started the app, intended as an “online refuge”, after receiving trauma therapy for social media abuse while living in the US.
The Australian Human Rights Commission acted as a friend of the court. Barrister Zelie Heger told the court that sex was no longer defined in the Sex Discrimination Act but that “importantly the Act recognises that a person’s sex is not limited to [being a man or a woman]”.
The case has been closely followed by both women’s and trans rights supporters, with Bromwich admitting “this was never going to be an easy case for anybody”.
Tickle received support from the Grata Fund, while a crowdfunding campaign set up to cover Giggle for Girls’ legal costs raised over $520,000.
Ignoring the tone of the article because I haven’t found a non-biased one yet, I’m so fucking over this shit. I’m disappointed in our court systems and what this precedent will mean for the rights of girls and women across the country.
49 notes
·
View notes
Text

Pairing: RK900/Gavin Reed
Tags: Post Pacifist Ending, Enemies to Friends to Lovers, Slow Burn, Eventual Smut, Angst, Hurt/ Comfort
Previous Chapter
Next Chapter
AO3 Link
Summary: In the aftermath of Detroit's android revolution, Nines grapples with the complexities of his newfound deviancy. As he seeks to establish his place in a newly transformed society, his resolve is put to the ultimate test when he is paired with Detective Gavin Reed-a notoriously volatile human with a well-established hatred for androids-to investigate a series of murders.
While initial impressions of his partner seem to suggest his reputation is well-deserved, the more time Nines spends with him, the more he is forced to challenge his judgments. As they form an unexpected bond, the RK900 is also pushed to examine truths about himself he would much rather seek to forget. (A Retelling of 'More Than Our Parts' from the POV of Nines.)
Warnings: Graphic Violence, Depression/Self Destructive Behaviour, Eventual Smut
Word Count: 6.2K
Tag List: @sweeteatercat @wedonthaveawhile @gho-stychan @tentoriumcerebelli @negative-citadel @faxaway @moriahadi424 @unicorn4genocide @cptjh-arts
Detective Reed's apartment was almost indistinguishable from his dismal preconstructions.
Initially, they struggled to even enter the home, with the man using his entire body weight to force the door open. While he slipped through the narrow gap with relative ease, Nines had much greater difficulty. His broad shoulders collided with the frame multiple times, as the bunched runner at his feet hindered his progress significantly.
Emerging inside, the reason for their difficulty soon became apparent. The android had always failed to understand how humans could endure such unfavourable conditions. They derived no pleasure from it, yet this discomfort often stemmed from their own complacency.
It was one of the worst examples he'd seen. Already tiny, the space was dwarfed by a staggering expanse of debris and clutter. It proved as hazardous as it was disorganised, with tight tangles of electrical cords snaking across the floor. They were partially concealed beneath a layer of brown paper and packing peanuts, ready to trip anyone who crossed their path.
"Don't mind the mess," Reed said flippantly, turning towards a nearby coat rack. It was layered high with a dense pillow of clothes. He paused to assess—as if considering how to expand the load without causing a collapse. "I just moved in a few months ago. Haven't finished unpacking."
'Mess' proved a gross understatement. It didn't begin to cover the profound level of squalor the man was inhabiting.
Despite this, he carried with him no discernable shame. If anything, he seemed proud of it—canvassing his surroundings with a contented sigh as he slipped an arm free from his jacket.
Nines struggled to maintain mental clarity in response to the confounding behaviour before reminding himself of his objectives. Studying the home in greater detail would be beneficial. Combing through the chaos in order to find personal items that could provide deeper insights into Reed's psyche.
In spite of any lingering aversion, Nines widened the scope of his optical units and determinedly proceeded. Considering the limited space in the apartment, his partner's use of it was far from optimal. The majority of his sparse shelving was cluttered with unnecessary memorabilia: cheap trinkets from tourist attractions, as well as numerous framed photographs.
The pictures were old, featuring the face of a much younger Reed—and a man Nines did not recognise. His facial identification software proceeded to resolve this, confirming the identity of the stranger:
> CHRISTOPHER JAMES REED
> BORN: 1ST DECEMBER 1972
> STATUS: DECEASED.
Nines failed to understand why his partner didn't discard some of his less essential possessions, given the skyline of unopened boxes towering behind them.
"I would think that a few months would have been sufficient time to unpack. I wager the delay has more to do with a lack of space."
"Yeah, well, there's that—" Any previous calculations were abandoned as Reed callously tossed his outwear at the stacked pile. "I'm still working out the logistics."
Nines considered sharing the findings of his spatial mapping, noting to Reed that there were few logistics to be calculated. However, he quickly determined the advice would be wasted, a reality the man would likely reject.
Instead, he mirrored his actions, shedding the outer layer of his Cyberlife uniform and folding it neatly in preparation for storage. It was a gesture he hoped would be received positively, demonstrating a willingness to adhere to the human's domestic customs.
The action certainly inspired a response, although not one Nines had anticipated.
With the jacket held in his grasp, he detected an elevation in Reed's core body temperature. This wasn't unusual, given the recent shift in climate. What proved peculiar, however, was an accompanying spike in heart rate and respiratory patterns.
Glancing over his shoulder, he sought to investigate further. His target didn't notice the shift, attention otherwise preoccupied by the definition of Nines' central chassis.
The detective's gaze followed a path down his undershirt, starting at the shoulder blades and continuing until it settled on the convex mould of the android's posterior.
Rising temperature intensified—a heat which pooled in his cheeks—as his expression flitted between alarm and intrigue. He was a man at war with himself, wishing to avert his eyes but unable to pull away.
It seemed the frustration Reed felt for him stemmed from more than just contempt. Sights lingered to the point of shameless transparency, and Nines couldn't help but draw amusement from it.
Despite all claims of 'advanced cognition', the humans around him proved remarkably driven by their base urges. Reed was no exception, as lust breached walls of prejudice with shameful ease.
Turning back towards the hangers, Nines feigned obliviousness to the ogling. Positioning his coat with much greater finesse than his partner, he stored a record of the behaviour for future reference.
As he removed his shoes, placing them neatly on the stand, a flicker of light caught his eye. It was reflected from a framed poster hanging askew on the peeling surface of the adjacent wall. Depicted was a young woman lying in bed, the covers clutched tightly to her chin as wide, fearful eyes reflected the gleam of five drawn razors. They hovered in perfect alignment above her face, threatening to swipe.
A subsequent analysis was triggered as his systems sought to identify the origin of the image:
> SOURCE IDENTIFIED
> CLASSIFICATION: RECREATION OF PROMOTIONAL POSTER ASSOCIATED WITH CINEMATIC PRODUCTION
> TITLE: 'A NIGHTMARE ON ELM STREET'
> RELEASE YEAR: 1984
> DIRECTOR: WES CRAVEN
The image was shouldered by several of its ilk, each depicting iconic figures or scenes from their respective franchises.
"You're a fan of horror films," Nines mused, closing the diagnostic branches. "Specifically, titles from the late twentieth century."
Reed was snapped back to reality, eyes freed from their magnetic hold on the RK900's backside. He looked up, visibly flustered, as if he'd been caught in a compromising position.
Nines maintained his facade of obliviousness. Hands folded neatly behind his back, he emphasised his 'curiosity' with a subtle cranial tilt.
"...Dad loved his horror," the man ultimately replied, stiff posture relaxing as he glanced up at the posters. "Got me into it young. I'd watched most of the Nightmare movies before I started junior high."
The longer he stared, the more his features softened—until a gentle smile spread across his lips. It was unlike any expression Nines had seen him wear. Absent of his usual bravado or smugness, it revealed a genuine vulnerability.
"That hardly seems like appropriate viewing material for such a young child. Was your father aware that most of these films possess an R rating?"
Reed tensed again, sharpness returning to his eyes as they fixed on Nines with a resentful glare.
"It didn't do me any harm; just meant I didn't grow up to be a total pussy."
His retort was hissed through clenched teeth as though causing him physical pain. The assessment had clearly touched a nerve. One that remained profoundly sensitive—despite all the time elapsed.
Recognising his mistake, the android sought to mitigate the damage, swiftly recalibrating his approach.
> RECALIBRATION SUCCESSFUL.
> CONVERSATIONAL ROUTE DETERMINED.
The solution came fast, much to his annoyance. It was as though RK800 was speaking to him directly, guiding his actions through their temporal channel.
> EXECUTING RECOMMENDED APPROACH.
Reed's uncouth remark posed an immediate hurdle. Nines held his tongue, silencing the sharp retorts that crowded his thoughts. Instead, he grasped for geniality—maintaining a performative interest in the decor:
"Do you have a favourite film?" Nines asked before observing his partner closely—gauging subtle cues in his body language, keen to assess the effectiveness of their ongoing engagement.
> TARGET ESTABLISHED — 'DETECTIVE GAVIN REED'
> TRACKING RESPIRATORY AND CARDIOVASCULAR FEEDBACK...
> ASSESSING MUSCULAR TENSION, PUPILLARY DILATION, AND FACIAL MICROEXPRESSIONS…
Reed gawked at his partner, blinking slowly as though seeking to determine if he had heard correctly. Then his jaw tightened reflexively, like an innate biological refusal to lower his defences.
"Why do you care?"
> WARNING.
> MUSCULAR TENSION: ELEVATED
> MICROEXPRESSION(S) IDENTIFIED: DISTRUST, DOUBT.
Reed had already detected his insincerity, a disheartening realisation for the RK900.
There was a period of despondent introspection, during which his partner appeared goaded to press on—solidifying their shift in dynamic, with Nines the one under scrutiny.
"You don't actually care, do you?"
In the wake of his failure, Nines almost wished that RK800 were guiding his communications. He was forced to manage the fallout whilst making a note to pursue further training in the art of social coercion.
"...I do not," he conceded, determining honesty to be the best option in mitigating the consequences of his deceit. "I believe I am trying to engage in what humans refer to as 'small talk'"
"Well, you're shit at it."
The insult came fast and biting—without a hint of hesitation. Nines resented how quickly the human cut him down, undermining any hope for an affable dialogue.
He tried to ignore it, but the words refused to abandon him. Charging through his mind in niggling currents, relentlessly persistent.
Nines stepped forward, and Reed instantly regretted the openness of his ridicule. Self-congratulatory titters were stifled as he glanced up at the opposing figure now looming over him.
"Through no fault of my own," Nines said sternly. "CyberLife did not provide me with an advanced social protocol. When taking part in a conversation, I learn from experience. Meaning I am only ever as adept as the partner I am engaging with."
The implications were not lost on Reed, who scowled in response. Fists tightened at his sides, although the combative gesture was undermined by a series of fraught twitches.
Corrective measures were made to hide them, and with a steeling breath, he straightened his back—lengthening his posture as much as possible.
The difference in their statures remained staggering, and Nines was forced to suppress a chuckle, understanding just how deeply this must have bothered his partner.
A ruthless assault on his already fragile masculinity.
> ACCESSING FILE — 'DETECTIVE GAVIN REED'
> UPDATE IN PROGRESS…
"Fuck you."
While disappointed the man couldn't think of a more meaningful insult, the android was far from surprised. His optic units were rolled in a tight flourish before he took a step back. The leg was swung with laborious slowness as though teasing the possibility of aborting the action.
"Aside from showing me your lovely home, what exactly are we doing here, Detective?"
"Stick it up your ass."
A far more riveting response. Nines was unable to show appreciation for the vivid picture created as Reed pivoted sharply on his heel.
Back turned to the android, he began pacing the room in disordered patterns, muttering nonsensically under his breath. " Where the hell … she's probably hiding because she's scared of you, tin-can."
Amusement dissipated, giving way to confusion. "...She?"
Reed ignored him, refusing to provide any clarification. Instead, he cupped his hands around his mouth and called across the room, interspersing his words with clicks of his tongue.
"Tiff, I'm home."
He was greeted with silence. After waiting a moment, Reed moved further into his home, heavy footfalls scattering litter as he charged toward an open doorway. Peering around the threshold, he swung his neck back and forth in a steady motion.
"Tiffany!" he called again, this time with increased insistence. "Come here, girl—"
His calls remained unanswered, and it appeared that Reed was losing patience with the absent individual. He retreated back into the living room, punctuating his failure with a dejected curse.
Nines found the situation odd—inconsistent with the personal data he had collected on his partner. Establishing a link with the DPD staff database, he searched for any updates or revisions that might clarify the disconnect:
> ACCESSING EXTERNAL FILE 'det_gavin_reed_3345'
> SEEKING MATCHES — SEARCH CRITERIA 'TIFFANY.'
As he awaited the results, Nines scanned Reed's possessions again. This time, he focused on anything that seemed out of place: clothes ill-fitted to his body type or hygiene products that he certainly wasn't using on himself…
> NO MATCHES FOUND.
Then he noticed it: the large structure positioned beside the television. It was made of carpeted plywood, platforms spiralling around a column of thick, corded rope. The arrangement came complete with cartoonish animal prints adorning each side.
> PRODUCT: LAYERED CAT TOWER — GREY — 6 FT (#CH-2984)
> DISTRIBUTOR: CLAW HAVEN PET GOODS LTD.
> RETAIL PRICE: $199.99 (46% ABOVE MARKET AVERAGE)
> DIMENSIONS: 6 ft (H) x 2.5 ft (W) x 2 ft (D)
This finding effectively resolved any logical inconsistencies. He hummed in understanding before disregarding his previous hypothesis.
"Tiffany is your pet."
"No shit." Reed, who had dropped to his knees at some point during his search, moved to stand back up. A felt mouse impeded his efforts, the tail catching under his foot until it was brushed aside with a firm kick. "Have you not seen the cat hairs all over my clothes? So much for being a super detective."
"I was aware you have a cat; I thought for a moment that you might be cohabiting—although a review of your personnel file suggested this was unlikely."
The assessment struck another blow at the man's already bruised confidence. He pulled back, posture restored to its usual hunched slump. Nines might have called it wariness had it not been for the palpable aggression still radiating from him.
"Oh yeah? And why is it so fuckin' unlikely?"
"Because your files indicate that you are recently single. Not to mention, the name 'Tiffany' would suggest a female-presenting individual, which would be inconsistent with your established orientation."
The human faltered, jaw flapping open and shut without any identifiable purpose. As he spoke, he did so in fragments, struggling to form a sentence. "That is—you—that is none of your business—"
"I wouldn't have thought you'd take issue with me stating the obvious. You answered 'Homosexual' quite openly in the most recent police census."
Reed responded to the information as though it were an insult—nose wrinkled contemptuously, and he took a margined step forward, seemingly ready to strike back.
The additional hostility proved puzzling, given the android had done nothing but state an objective fact. Perhaps he had missed some subtle nuance, a tone or gesture that would have warned of the growing aversion…
Still, now that a dialogue was open, it seemed a shame to waste the opportunity. If not to foster their 'connection', then to assess how pressing further might influence Reed's emotional state.
Inspiration struck, and boldness manifested in a mischievous smirk which tugged at his lips.
"Not to mention…" Nines began, deliberately slowing his words, drawing them out with a husky lilt. "When in the proximity of conventionally attractive males, your physical responses are consistent with sexual arousal."
The reaction of his partner escalated. He abandoned any advance, recoiling as if struck. Tension gripped his body; the muscles in his neck pulled taut, bulging through flushed skin.
However, beyond this surface pressure, there lingered hints of receptiveness. The marginal dilation of pupils and the nervous bobbing of his throat…
"...Why did I let you into my apartment?" he snapped, pulling himself forcefully from the grip of salacious temptation. "Go wait in the rain. I'm done with you."
"I am afraid I cannot do that," the android deadpanned. "If I leave this building, I cannot ensure that you will return to the station, and I require your assistance in reviewing our case."
"Well, shut up then. Stop being an asshole for five minutes and shut your damn mouth."
Nines had no intention of obliging, curious to see how far he could press the teasing. To observe how fast his partner might fold, omitting his principles in favour of carnal appetite…
Then, there was a sudden shift from across the apartment, and the experiment was forgotten. The RK900 perked up, his auditory processors adjusting as he attempted to identify the source. His partner had heard it as well, as after another sound—more like a wail—a spark of familiarity passed his gaze.
"There she is. Probably stuck in the bath."
Rounding his worn leather couch, Reed approached a sealed door flanked by two stacked bookshelves. He reached for the handle before freezing mid-motion, casting a contemptuous glance across his shoulder.
"You wait here."
"I can assure you that isn't necessary." Nines smoothly countered. "I am quite comfortable in the presence of felines."
It was a guarantee that felt justified.
While the recent changes to his residence meant he had not yet acquired pets, it hadn't stopped him from building a rapport with the local strays—a group of felines who would routinely visit him, drawn by the promise of food.
Lately, their visits had started to linger, with them trusting the android to attend to more intimate care requirements. Grooming and shows of affection—honours that did not extend to other residents in the building.
"It isn't about you being comfortable, genius. It's about her not freaking the fuck out."
The comment stirred a slight ripple in his confidence. While drawing an undeniable enjoyment in testing the limits of his partner's tolerance, the RK900 had no intention of extending this treatment to his pet.
"I take it she is not particularly friendly?"
As if in response, the distressed cries grew louder from behind the door. The scratching of tiny claws followed as if the animal was trying to dig free from its confines.
Reed's jaw clenched, and his grip tightened firmly around the handle." "No, she isn't."
Hesitancy quickly deserted Nines. It seemed clear that his partner—in all his abrasiveness and impatience—was far from the soothing presence the pet required. He felt a strong urge to observe—prepared to intervene if more effective methods were required to ease distress.
With a twist of the handle, the door swung open with a soft creak. Nines moved in step with his partner, earning a small grunt of dismay. Reed seemed aware of the android's determination to assist, regardless of invitation, and had begrudgingly resigned to it.
"Just keep your distance," he murmured gruffly, pinching the bridge of his nose, "and don't make any sudden movements. Got it?"
Already lacklustre hygiene standards deteriorated significantly upon entering the bathroom.
There were thick layers of grime caked on all visible surfaces, suggesting the space hadn't been cleaned in a significant amount of time. Were Nines to speculate how long, he would say the event likely preceded the human's tenancy.
The smell was repulsive, wafting around them in pungent coils. Organic matter clogging the drainage system accounted for most of it, concentrated with the greatest intensity in the open plug of the bathtub.
It was a detail the android soon overlooked in favour of the set of vibrant green eyes peering at him from across the rim.
They were framed by a canvas of inky black fur, save for bands of white that spanned the creature's chin and nose. Her jaw widened, eclipsing the eyes as she revealed rows of sharp teeth.
Nines was completely enchanted, unable to look away as his partner reached across and deftly scooped her up.
"Come on, wide load. You could get yourself out; you don't need to be airlifted."
Reed skillfully adjusted his hold, allowing the feline to blanket herself on his forearm. As he brushed his dominant hand across the top of her head, she responded with a series of throaty rumbles, nudging into the presses and arching back to reveal her stomach.
It was then that Nines noticed the large protrusion.
It seemed disproportionate to the feline's size and raised concerns that it might have resulted from inappropriate feeding. Frowning, he fired a biophysical analysis—examining for any health concerns and ready to scold Reed for any transgressions.
He received a concise overview of Tiffany, including her age and relevant weight and fitness metrics. Nothing proved especially concerning; however, he did encounter an unexpected detail:
> VITAL SIGNS DETECTED — MULTIPLE.
> GESTATIONAL STAGE: THIRD TRIMESTER.
The system prompt lingered on his HUD as he quietly absorbed the information.
"... She's pregnant," he eventually said, closing the diagnostic channel. "Were you aware?"
Reed, who had appeared to revel in the distraction from their close proximity, was rudely reminded of his existence. He grimaced before seeking to return to his previous tranquillity.
Forcefully sidling past the android, he clipped his shoulder in an effort to make for the exit. "I'm aware; must've been a stray. Getting his dick wet is about to cost me a fortune in vet bills."
Nines was tempted to inform his partner of how easily this situation could've been avoided had he done his due diligence getting the feline spayed. Instead, he lingered on the broader implications of the statement, hit with a wave of excitement mingled with trepidation.
"Do you intend on keeping the babies?"
"Hell no, I can barely afford to keep this one."
Nines felt reassured by this. While the upcoming birth was pleasant news, the idea of more animals being subjected to the current unsavoury living conditions was deeply alarming.
That said, Tiffany appeared to be coping well, given the circumstances. She was healthy and proved visibly content in Detective Reed's company—an extremely novel achievement that few could claim.
Nines followed the man out of his bathroom and into the neighbouring kitchen. Despite his earlier insistence that his pet could move, Tiffany remained cradled in his arms for the entirety of the short journey.
Rocked by the steady vibrations of footsteps, she nestled peacefully into the groove between her owner's chest and neck. Whiskers brushed against coarse stubble, causing Reed to flinch before he firmly corrected his posture—a silent pledge not to disturb her.
Unfortunately, he was unable to maintain this vow. As they reached their destination, he was forced to shift her aside in order to access a nearby pantry.
It did not escape the android's attention that the majority of shelves were barren, save for the central reservation, stacked to the brim with pet goods. Reed leafed through the glossy food pouches, browsing the selection until he settled on a product ambitiously advertised as 'Premium Chicken Breast in Rich Gravy.'
He pinched the pouch between his fingers and flipped it onto the counter, the contents displacing with a wet splat. "Mystery meat giblets with jelly and eyelids—bon appétit."
Despite the disparaging claim, it transpired that the heading on the packet was fairly accurate. This was determined by an internal scan of the foil, with a subsequent cross-reference of the barcode suggesting the brand was far from economical.
It seemed Reed had a habit of excessive spending as it pertained to his pet. Interesting, given his purported financial struggles and the absence of his own basic provisions.
"My scanners indicate that the meat is poultry, with some additional supplements and flavour enhancers—the balance of proteins and vitamins should provide more than adequate nutrition."
"Heh, is that so?"
Beyond the attempted nonchalance, Reed seemed genuinely pleased with the information. After preparing Tiffany's meal and setting it on a nearby mat, he stopped momentarily to card his fingers affectionately through the back of her coat.
"Good to know that what I'm feeding her isn't total shit. She seems to like it, anyway—that's all that matters."
The human stayed that way for some time. Looking down at his pet, smiling fondly, before moving to discard the pouch in an overflowing waste receptacle.
As Nines watched, persistent notifications flooded his HUD. At first, they focused on the litter cascading to the floor, displaced by a heavy hand. Then, attention shifted to his partner's current behaviour—elements misaligned with his interpersonal records.
> ANOMALIES DETECTED.
> ACTION REQUIRED.
"I would surmise that she eats better than you," he continued, attempting to move past the disruption. "Her vitals are all normal, and her physical appearance suggests optimal health. You are taking excellent care of her."
> SUGGESTED ACTION: CHANGES REQUIRED TO CHARACTER FILE — 'DETECTIVE GAVIN REED'
Resigned to the fact that the prompts would persist until acknowledged, the android complied and opened the file. A descending procession of text followed, pushing past the alerts as it readied itself for review:
> DETECTIVE REED LIKES DOGS.
Irritated that such an inconsequential point would cause such a pronounced disturbance, Nines revised it nonetheless—inputting an elaboration before realising its redundancy and scrapping both in favour of a unified statement.
> DETECTIVE REED LIKES DOGS.
> DETECTIVE REED LIKES CATS.
> DETECTIVE REED LIKES ANIMALS.
With the profile updated, Nines hoped to secure some form of cognitive release—the freedom to observe Tiffany without interruptions, sharing vicariously in her contentment. No such luxury came, as the charge of data soldiered on:
> REED SHOWS COMMITMENT TO THE CARE AND WELL-BEING OF HIS PET.
> BEHAVIOUR COMES AT THE DETRIMENT OF HIS OWN PERSONAL WELL-BEING.
Nines attempted to exit the file but found himself unable to do so, no matter how many commands were sent to his processor. It remained locked in his consciousness, a branch of cognition demanding expansion:
> DETECTIVE REED DEMONSTRATES SELFLESSNESS.
This proved a step too far for the RK900. It was a notion that verged into the obscene and one he refused to dignify, rejecting the addition as soon as it appeared. This did little to assist, as in the wake of the dismissal, his cognition looped back to the start of the strain. Seemingly just to mock him.
> DETECTIVE REED LIKES ANIMALS.
> COMMON GROUND ESTABLISHED.
His partner, unaware of the pronounced conflict Nines was experiencing, emitted a terse snort.
"Since when are you capable of giving compliments?"
The noise broke his focus, granting the android an opportunity to escape the state of mental paralysis. He looked up at Reed, noting that he had pulled away from his pet in favour of leaning against the countertop. His hands gripped the stained granite, unperturbed by the smear of grease now coating his palms, as he awaited a response.
"It was not intended as a compliment," Nines quickly clarified. "I was simply making an observation—"
Then he stopped himself, the rationalisation trailing off, unfinished. It occurred to him that adopting the man's skewed narrative might simplify matters. Feeding into whatever conclusions Reed wished to draw whilst shamelessly reaping the benefits.
"Feel free to interpret it as one, though, should you wish."
Much to his vexation, the detective remained unconvinced—despite the performance being shaped by this narrative. His eyes narrowed into slits, the corners of his mouth twitching as if considering something. Whatever fleeting thought had passed was quickly discarded with a sharp click of his tongue.
"Let me guess, Connor taught you to say that? Don't pull that fake compassion bullshit on me. It won't work."
Nothing else was said on the matter as Tiffany interrupted them. Beckoning her owner's hand with an insistent mewl, unenthused by its sudden absence.
Reed rolled his eyes, but the gesture was clearly performative as he dutifully resumed his duties. This time, crouching down to reduce the proximity between himself and the animal.
"Jeez, you're a needy bitch..." He cradled the back of her skull, targeting the junction between her ears with gentle presses. "There, head scratches—you happy now?"
Nines grimaced as sticky residue transferred onto the feline, matting her fur. It seemed he was the only one concerned by this, as Tiffany responded gleefully. Rumbled purrs reverberated in the back of her throat, and she rolled into her owner's touch, seeking further contact.
It was an action that Reed had undoubtedly performed countless times and one that also struck Nines with a sense of familiarity.
He wondered how the glossy coat might feel between his own fingertips. How the sensory input would differ from that of his dishevelled, street-bound companions…
His body ached with the need to satiate this curiosity, compelling him to mirror Reed's actions. His knees bent slowly, bringing him to the floor with precise movements. Each motion was carefully calculated to ensure he wouldn't startle the animal.
Despite his caution, Reed responded as though he had brandished a lethal weapon at her. His body tensed as he protectively manoeuvred himself between them.
"Hey, watch it— I'm not kidding around, Nines. She hates everyone. Get any closer, and you'll be android sashimi."
There was little credible threat in the warning. The RK900 was able to withstand military-grade ballistics and was entirely incapable of feeling pain. The worst outcome of an attack from a domestic cat would be the inconvenience of minor cosmetic damage.
Nonetheless, he halted. While his partner's claims could not be verified, he was reluctant to participate in any behaviours that may cause Tiffany undue stress. It seemed best to allow the pet to approach, assessing for herself that he posed no threat.
With a swift calibration of his physical routing, Nines stood up, briskly smoothing out the creases that had formed in his uniform. "Very well."
"...Well…shit." The human whistled low, brows raised, and lips quirked in exaggerated appreciation. "You actually listened to what I said. Full of surprises today, aren't ya?"
Beneath the surface of smug teasing, there appeared to be a hint of sincerity. The man was angled towards him, his posture open and gaze locked forward.
It spat in the face of apathy, as no measure of this behaviour could be determined false. Evidently, there was a part of the human that sought to mirror Nines' current goals—extending his own understanding of his partner.
This curiosity served as the final piece in a rapidly assembling picture he'd created of Reed. It extended past the bounds predicted, and the RK900 sought to expand the scope further with another testing push.
"I could say the same thing about you, Detective."
The coy smirk vanished instantly. His face shifted, features pinching in a bewildered crease. As though seeking to determine the veering turn their conversation was now taking. "...What do you mean by that?"
Reed could have easily ignored the android, attempting to steer off course, but he didn't. There was a part of him, however dormant, that had hoped for this development.
To Nines, it seemed an opportune time to facilitate these wishes. While he lacked the skills required to promote any long-term benefits, he hoped the fleeting psychological release would prove a useful means to an end.
"In the time we have been working together, I have observed certain patterns in your behaviour…" Nines began, tone neutral—but stern enough to probe a response. "While you present yourself as hostile and uncooperative, this seems inconsistent with your underlying motivations."
"Where the hell are you going with this?"
"There must have been a reason you joined the police force. A cynic might suggest a desire for power, but I believe the reality is more compassionate."
Hands folded behind his back, the RK900 honed his gaze with ruthless focus. It was a calculated divergence from the approach of his predecessor, as it had become clear that Reed did not appreciate RK800's signature sympathies.
The gentle intricacies were wasted on him—in favour of a disproportionate value placed on something less nuanced. An instinctive need to engage in conflict to the point he revelled in it.
"You desire to protect those you deem vulnerable. In turn, this makes you feel more assured—powerful."
The words struck their mark flawlessly as Reed bristled in response. He then rose from his crouched position, meeting the challenge head-on." Are you fucking psychoanalysing me?"
Nines knew he couldn't back down—to show any form of weakness or hesitancy. In sticking firm to the current trajectory, he assuredly charged on:
"Whilst preoccupied with archaic views on strength and masculinity, you are a deeply sensitive person. Perhaps wounded from some unresolved trauma. This results in a great deal of insecurity for you."
"You are, aren't you?" Reed attempted to match the assurance, but his underlying resolve proved woefully unequipped to meet these demands.
Cracks had already formed, buckling under increased pressure as his defiant posture began to stoop. Arms wrapped around his chest, a habitual motion he seemed to perform whenever he felt vulnerable.
"Look, I've been real nice to you today, tin-can. Taken you out to lunch, put up with your shit, but this is where I draw the line—"
"I wouldn't call it psychoanalysis. I am simply assessing your physical response to specific statements and stimuli."
With Reed cornered, Nines determined it was time to deliver the final blow. Striking with precision, driving deep into the swell of his concealed chest.
His blade came laced with a subtle mockery, ensuring the words left a sting.
"Your insecurity is unwarranted, at least concerning this aspect of yourself. While you are brash and uncouth, and your work ethic severely lacking, I hesitate to admit that you possess qualities some might consider…endearing."
His pitch shifted towards the end of the sentence, utilising a snippet of the voice sample he had collected from Officer Chen.
Recognition sparked in his partner's eyes, mingled with a building frustration, as he realised he'd been defeated. A tense silence settled between them, leaving Nines in brief anticipation for how his partner may take the loss.
Then, the human responded—jaw clenched with such pronounced tension that he seemed in danger of shattering his teeth. "You ever going to get tired of playing games with me? I bet you think this is funny , don't you?"
The RK900 pondered on this, fully absorbing the man's expression before performing a reading to assess his own response. While there were myriad uncertainties in his capacity to feel—complexities he was still navigating—in this instance, the answer proved straightforward.
"Perhaps."
The confirmation did little to clear the dense fog of contempt that had descended across his partner's gaze. Still, the transparency sought to inspire some secondary sentiment. Glowing embers of curiosity, not yet extinguished, cast a small glow of light through the mist.
Then Reed shook his head as though attempting to rattle the undesired thoughts from his skull. His subsequent address was stiff and insistent, tension betraying an enduring struggle as he brusquely changed the subject.
"You know what? Break time's over; let's talk about work." The man secured a worn plastic chair from a nearby table, flopping into it clumsily. "So—what do we know about our killer so far?"
More than happy to reroute the dialogue to something more substantial, the RK900 complied with the deflection—as entertaining as the teasing had been.
Accessing his temporal link to the DPD directory, he swiftly located the relevant case files. Once prompted, the assigned photos and text revealed themselves, circling around the perimeter of the kitchen. The ordered formation stood in stark contrast with the pronounced clutter it overlaid.
"There have been no eyewitnesses who have come forward for either murder. Aside from what we have ascertained regarding their clothing—namely, that they were wearing a black polyester jacket at the time they murdered the MJ100—we have little to go on in terms of a physical profile."
"That's just peachy, Nines," came a sardonic reply. Reed reclined further in his seat, threatening to tip off it, "but I asked what we did know. Your signals jammed or something?"
Truthfully, there had been a delay in analytical cognition. This was not a consequence of signal disruption, however, but something more tangible.
Tiffany had abandoned her meal in favour of sniffing curiously at his feet. Nines waited to see if she would act in hostility—the veritable flaying Reed had warned of—but no such advent occurred. Instead, she continued to circle his ankles, the relaxed positioning of her back and ears suggesting no aggression.
Reed pulled forward, his chair following the motion with a disconcerting squeak. He observed his pet with stunned bewilderment as if she'd ascended onto her hind legs and begun walking upright.
"... Well, I'll be damned," he eventually said, shaking his head in disbelief.
Nines barely heard him, as all his energy was now focused on keeping the discussion on track. Disregarding the drive to abandon work in favour of scooping Tiffany into his arms, rewarding her geniality with well-deserved praise.
"In regards to the first case, a contact number for Thod Graws has been found in the HR400's diary—
We have been able to trace the number, as well as the SIM card, to its last known location. An outgoing call was made to the victim from a Cedars Motel approximately 12 hours before the murder. No doubt, to arrange a booking for the victim's services."
Gavin pursed his lips at the deduction before humming in muted agreement. "Might be worth asking Reception if they saw anything suspicious…"
He then paused, catching a glimpse of something over the android's shoulder. His attention diverted fully as his lips pulled into a tight frown. "Will have to wait until tomorrow, though. You were right; we've gone well over an hour. Fowler is going to fucking lynch me."
"For what it is worth, I haven't found this experience completely abhorrent." Nines had also looked away, his attention shifting to the purring bundle of fur still rubbing against his legs. "I have enjoyed meeting Tiffany."
"You weren't kidding about being 'comfortable with felines'—I wouldn't have pegged you for an animal lover."
"My interactions with animals have been limited. However, I find that their company is often more pleasant than humans."
Reed looked back at him, his nose wrinkled, bunching the span of his nasal scarring. Then, he started to chuckle, a noise which quickly escalated into a rich laugh.
For a moment, it was as though all contentions between them had been forgotten—something that could have easily been mistaken for camaraderie if viewed from an outside perspective.
"Yeah, well, I guess we can agree on that one."
A prompt flashed on his HUD once again, this time received with significantly more positivity by the android. Releasing that infiltration had been successful, with his partner now open to the possibility of congruity existing between them:
> COMMON GROUND ESTABLISHED.
#ignore that the chapter numbers are now a bit weird#it is the consequence of my own timeline fuckery#dbh#detroit become human#reed900#dbh nines#dbh gavin#dbh rk900#dbh fanfiction#dbh fanfic#gavin reed x rk900
20 notes
·
View notes
Text
This week, we spoke with four federal-government IT professionals—all experienced contractors and civil servants who have built, modified, or maintained the kind of technological infrastructure that Musk’s inexperienced employees at his newly created Department of Government Efficiency are attempting to access. In our conversations, each expert was unequivocal: They are terrified and struggling to articulate the scale of the crisis.
. . .
“This is the largest data breach and the largest IT security breach in our country’s history—at least that’s publicly known,” one contractor who has worked on classified information-security systems at numerous government agencies told us this week. “You can’t un-ring this bell. Once these DOGE guys have access to these data systems, they can ostensibly do with it what they want.”
. . .
Given the scope of what these systems do, key government services might stop working properly, citizens could be harmed, and the damage might be difficult or impossible to undo. As one administrator for a federal agency with deep knowledge about the government’s IT operations told us, “I don’t think the public quite understands the level of danger.”
. . .
These systems are immense, they are complex, and they are critical. A single program run by the FAA to help air-traffic controllers, En Route Automation Modernization, contains nearly 2 million lines of code; an average iPhone app, for comparison, has about 50,000. The Treasury Department disburses trillions of dollars in payments per year.
Many systems and databases in a given agency feed into others, but access to them is restricted. Employees, contractors, civil-service government workers, and political appointees have strict controls on what they can access and limited visibility into the system as a whole. This is by design, as even the most mundane government databases can contain highly sensitive personal information. A security-clearance database such as those used by the Department of Justice or the Bureau of Alcohol, Tobacco, Firearms and Explosives, one contractor told us, could include information about a person’s mental-health or sexual history, as well as disclosures about any information that a foreign government could use to blackmail them.
Even if DOGE has not tapped into these particular databases, TheWashington Post reported on Wednesday that the group has accessed sensitive personnel data at OPM. Mother Jones also reported on Wednesday that an effort may be under way to effectively give Musk control over IT for the entire federal government, broadening his access to these agencies.
. . .
With relatively basic “read only” access, Musk’s people could easily find individuals in databases or clone entire servers and transfer that secure information somewhere else. Even if Musk eventually loses access to these systems—owing to a temporary court order such as the one approved yesterday, say—whatever data he siphons now could be his forever.
With a higher level of access—“write access”—a motivated person may be able to put their own code into the system, potentially without any oversight. The possibilities here are staggering. One could alter the data these systems process, or they could change the way the software operates—without any of the testing that would normally accompany changes to a critical system. Still another level of access, administrator privileges, could grant the broad ability to control a system, including hiding evidence of other alterations. “They could change or manipulate treasury data directly in the database with no way for people to audit or capture it,” one contractor told us. “We’d have very little way to know it even happened.”
. . .
Musk’s efforts represent a dramatic shift in the way the government’s business has traditionally been conducted. Previously, security protocols were so strict that a contractor plugging a non-government-issued computer into an ethernet port in a government agency office was considered a major security violation. Contrast that with DOGE’s incursion. CNN reported yesterday that a 23-year-old former SpaceX intern without a background check was given a basic, low tier of access to Department of Energy IT systems, despite objections from department lawyers and information experts. “That these guys, who may not even have clearances, are just pulling up and plugging in their own servers is madness,” one source told us, referring to an allegation that DOGE had connected its own server at OPM. “It’s really hard to find good analogies for how big of a deal this is.” The simple fact that Musk loyalists are in the building with their own computers is the heart of the problem—and helps explain why activities ostensibly authorized by the president are widely viewed as a catastrophic data breach.
-----
“‘Upgrading’ a system of which you know nothing about is a good way to break it, and breaking air travel is a worst-case scenario with consequences that will ripple out into all aspects of civilian life. It could easily get to a place where you can’t guarantee the safety of flights taking off and landing.” Nevertheless, on Wednesday Musk posted that “the DOGE team will aim to make rapid safety upgrades to the air traffic control system.”
Even if DOGE members are looking to modernize these systems, they may find themselves flummoxed. The government is big and old and complicated. One former official with experience in government IT systems, including at the Treasury, told us that old could mean that the systems were installed in 1962, 1992, or 2012. They might use a combination of software written in different programming languages: a little COBOL in the 1970s, a bit of Java in the 1990s. Knowledge about one system doesn’t give anyone—including Musk’s DOGE workers, some of whom were not even alive for Y2K—the ability to make intricate changes to another.
. . .
Like the FAA employee, the payment-systems expert also fears that the most likely result of DOGE activity on federal systems will be breaking them, especially because of incompetence and lack of proper care. DOGE, he observed, may be prepared to view or hoover up data, but. . . it doesn’t appear to be prepared to carry out savvy and effective alterations to how the system operates.
. . .
But DOGE workers could try anyway. Mainframe computers have a keyboard and display, unlike the cloud-computing servers in data centers. According to the former Treasury IT expert, someone who could get into the room and had credentials for the system could access it and, via the same machine or a networked one, probably also deploy software changes to it. It’s far more likely that they would break, rather than improve, a Treasury disbursement system in so doing, one source told us. “The volume of information they deal with [at the Treasury] is absolutely enormous, well beyond what anyone would deal with at SpaceX,” the source said. Even a small alteration to a part of the system that has to do with the distribution of funds could wreak havoc, preventing those funds from being distributed or distributing them wrongly, for example. “It’s like walking into a nuclear reactor and deciding to handle some plutonium.”
. . .
DOGE is many things—a dismantling of the federal government, a political project to flex power and punish perceived enemies—but it is also the logical end point of a strain of thought that’s become popular in Silicon Valley during the boom times of Big Tech and easy money: that building software and writing code aren’t just dominant skills for the 21st century, but proof of competence in any realm. In a post on X this week, John Shedletsky, a developer and an early employee at the popular gaming platform Roblox, summed up the philosophy nicely: “Silicon Valley built the modern world. Why shouldn’t we run it?”
More at the link.
The coup has already happened, and we lost.
7 notes
·
View notes
Text
Meeting with my Catholic counselor
May 2, 2025 St. Athanasius, Doctor of the Church
It's been over a month since our last session. I was too busy during Lent with work that my counselor said "it sounds like God gave you an extra cross to bear. We sometimes have plans, but God has other plans for us."
Looking back at Lent and that project for work, I felt like it was a complete failure. I spent many nights stressing out over it, sitting on my bed until 4am slaving away to get my code to work. It was poorly scoped, poorly executed, not production-level. Exactly nothing that I was proud of to deliver.
With these experiences, my counselor always challenges to ask me what God's plan was for him to give me that cross.
"Sometimes you may want to be more virtuous with patience and God gives you a child who really tests you on that."
I did ask for that challenge. I wanted to have more ownership in my work, something more challenging to test my software engineering and software design abilities. I made many mistakes. Many times I wanted to give up and start over. Many times I wondered if I was meant for this job. I wondered if my heart was even into it anymore - the education, the career and the work that I dreamed of having which I now live. I also wondered if this job was a cross that was too much to bear on top of taking care of my family.
Looking at it now with a clear mind, even with my thoughts constantly telling me that everything was a failure, it turned out fine. We delivered in good time. I learned that I could rely on my teammates to help me instead of doing it all alone.
What did suffer was my mental health, my presence with my family, my ability to support and care for them. My husband and I were contemplating over my coworker's recent departure. My husband told me that work will never remember or even know about the late nights I spend working. We're just a number and can be easily replaced. But our family will remember those late nights - the late nights that turn into exhausted days that end up in stress, anger and yelling.
It makes me wonder. Why, God, what is your true message in this? And after all that was said and done, the project came back to haunt me and is having a reprise at a more complex scale.
I'm starting to realize that my thoughts are mostly mine and not His. That I need to pray more and ask for His plan. What is Your will that you wish to be done?
A part of the Our Lady of Perpetual Help novena used to always be with me in my notebooks at work and now even more than ever do I need to remind myself of it:
"I am the servant of the Lord, I will what God wills, when he wills it, as he wills it, because he wills it."
~
(Some random thoughts since it's late.)
My counselor also gave me guidance for wrath. Whenever I start to feel myself slip into rage, I need to remember to "Pause. Pray. Proceed."
Pause and stop myself from escalating my feelings and emotiosn further. Pray for guidance and help from God. Then after I've calmed down and received guidance, to proceed and carry out His will.
And an analogy that unlearning old habits is like hiking a trail. The more you continually go down the same path, the more your footsteps cause a path to become a trail. When you're trying to undo old habits, you will take another path. It will be unwalked at first and be difficult to get through, but the more you walk it, the easier it will get. The old path will become overgrown and harder to go through the more you keep going down the new path.
~
I also received some homework. My counselor recommended I read St. Francis de Sales' "Introduction to the Devout Life" so that I can learn about a Rule of Life.
6 notes
·
View notes
Text
How to Build Software Projects for Beginners
Building software projects is one of the best ways to learn programming and gain practical experience. Whether you want to enhance your resume or simply enjoy coding, starting your own project can be incredibly rewarding. Here’s a step-by-step guide to help you get started.
1. Choose Your Project Idea
Select a project that interests you and is appropriate for your skill level. Here are some ideas:
To-do list application
Personal blog or portfolio website
Weather app using a public API
Simple game (like Tic-Tac-Toe)
2. Define the Scope
Outline what features you want in your project. Start small and focus on the minimum viable product (MVP) — the simplest version of your idea that is still functional. You can always add more features later!
3. Choose the Right Tools and Technologies
Based on your project, choose the appropriate programming languages, frameworks, and tools:
Web Development: HTML, CSS, JavaScript, React, or Django
Mobile Development: Flutter, React Native, or native languages (Java/Kotlin for Android, Swift for iOS)
Game Development: Unity (C#), Godot (GDScript), or Pygame (Python)
4. Set Up Your Development Environment
Install the necessary software and tools:
Code editor (e.g., Visual Studio Code, Atom, or Sublime Text)
Version control (e.g., Git and GitHub for collaboration and backup)
Frameworks and libraries (install via package managers like npm, pip, or gems)
5. Break Down the Project into Tasks
Divide your project into smaller, manageable tasks. Create a to-do list or use project management tools like Trello or Asana to keep track of your progress.
6. Start Coding!
Begin with the core functionality of your project. Don’t worry about perfection at this stage. Focus on getting your code to work, and remember to:
Write clean, readable code
Test your code frequently
Commit your changes regularly using Git
7. Test and Debug
Once you have a working version, thoroughly test it. Look for bugs and fix any issues you encounter. Testing ensures your software functions correctly and provides a better user experience.
8. Seek Feedback
Share your project with friends, family, or online communities. Feedback can provide valuable insights and suggestions for improvement. Consider platforms like GitHub to showcase your work and get input from other developers.
9. Iterate and Improve
Based on feedback, make improvements and add new features. Software development is an iterative process, so don’t hesitate to refine your project continuously.
10. Document Your Work
Write documentation for your project. Include instructions on how to set it up, use it, and contribute. Good documentation helps others understand your project and can attract potential collaborators.
Conclusion
Building software projects is a fantastic way to learn and grow as a developer. Follow these steps, stay persistent, and enjoy the process. Remember, every project is a learning experience that will enhance your skills and confidence!
3 notes
·
View notes
Text
What are the common types of testing practiced in functional testing services?
Functional Testing Service
Functional testing serves as a key role in ensuring that software applications perform as expected or meet their planned objectives. It addresses each feature and function of the software crafted and makes sure that everything works according to the set requirements. Businesses rely on functional testing services to deliver smooth, bug-free user experiences. Let's address the common types of testing used in functional testing services.
Unit Testing
Unit testing checks the overall individual components or pieces of code in a software application as its general set practices. The developers typically run this type of test during the development phase to make sure that each part functions correctly on its own as per the set routine.
Integration Testing
Once individually the units are tested and checked, the functional test continues and moves towards integration testing. This type of testing assures that different modules or services in an application work together as expected. It catches errors that might occur when multiple components interact with each other.
System Testing
System testing involves testing the complete software as a whole. Here, testers check all functionalities and how the application behaves in a simulated real-world environment. It’s a critical step in any functional test process.
Sanity Testing
Sanity testing is a part of functional testing as it operates as a quick check to assure that a specific function or bug fix works correctly. While it's not a deep test but assists to decide whether the software is stable enough for further testing and ahead proceedings.
Smoke Testing
Smoke testing is a basic test that verifies the functionality of the application's most critical features and their specifications. It acts like a safety check to assure that the application is ready for more in-depth testing practice.
Regression Testing
Whenever software or code is updated or changed, the regression testing assures that the existing functionalities still work correctly as per the set parameters. As it helps to prevent new changes from breaking the application.
Functional test assures consistency in performance, regardless of the platform and medium, helping businesses to deliver reliable services and its offerings to all the users.Each type of functional testing contributes to building a reliable and high-quality application. These methods and procedures aids the teams to identify the bugs early, enhance performance and lower the post-launch issues and its scope. Experienced service providers like Suma Soft, IBM, Cyntexa, and Cignex offer comprehensive functional test services to assist businesses in maintaining smooth and error-free applications.
#it services#technology#saas#software#saas development company#saas technology#digital transformation
2 notes
·
View notes
Text
Online M.Tech for Working Professionals: Advance Your Engineering Career
In today’s fast-paced and innovation-driven world, keeping your technical knowledge up to date is no longer optional—it’s essential. For those in the engineering sector, earning a master's degree can open doors to specialized roles, leadership positions, and research opportunities. But how do professionals with full-time jobs return to academics without hitting pause on their careers?
The answer lies in online M.Tech for working professionals, a flexible, recognized, and career-boosting solution that’s gaining widespread popularity. Whether you're eyeing career growth or aiming to pivot into a new tech domain, the M.Tech for working professionals path offers everything you need—convenience, credibility, and capability.
Let’s explore what makes the M.Tech program for working professionals so effective and how platforms like University Vidya are making the journey smoother for thousands of learners.
Why Choose an M.Tech for Working Professionals?
The primary goal of pursuing an M.Tech degree for working professionals is to upgrade your existing skills without interrupting your career. These programs are curated to cater to the unique needs of employed engineers—offering flexible schedules, online coursework, and subject specialization that directly connects with industry demands.
Be it in software development, civil infrastructure, electrical systems, or mechanical innovations, a postgraduate qualification can drastically improve your profile and performance.
Formats: Part-Time, Distance & Full-Time Options
Working engineers often wonder which format suits them best. Let’s break it down:
1. Part Time M.Tech for Working Professionals
This format is ideal for those who prefer weekend or evening classes. The part time M.Tech for working professionals allows you to continue working while studying, maintaining a steady balance between learning and earning.
2. Distance M.Tech for Working Professionals
The distance M.Tech for working professionals is perfect if you seek complete flexibility. You can learn at your own pace through self-guided modules, video lectures, and virtual labs—supported by minimal in-person requirements.
3. Full Time M.Tech for Working Professionals
Some professionals take a career break or opt for flexible job arrangements to enroll in full time M.Tech for working professionals. These programs are immersive, research-oriented, and suitable for those looking to dive deeper into academics.
No matter which format you choose, University Vidya helps you find verified, recognized institutions that align with your career goals and learning preferences.
M.Tech Program for Working Professionals: Course Design
The M.Tech program for working professionals is structured differently from traditional programs. Here's what sets it apart:
Tailored for mid-career engineers and tech leads
Industry-aligned curriculum
Project-based learning and case studies
Emphasis on real-world problem solving
Support from virtual mentors and faculty
Specializations range across Computer Science, Data Science, Structural Engineering, VLSI Design, Thermal Engineering, and more. University Vidya can assist you in comparing programs based on your desired domain.
M.Tech Admission for Working Professionals: What You Need to Know
The M.Tech admission for working professionals generally involves a streamlined process:
A relevant B.E. or B.Tech degree
Professional experience (1–3 years depending on the program)
Application form and document submission
Some institutes may conduct interviews or aptitude tests
With so many options, it can be overwhelming to pick the right program. That’s where University Vidya comes in—helping you with eligibility checks, program comparison, and admission support.
Career Scope After an M.Tech Degree for Working Professionals
Completing your M.Tech degree for working professionals unlocks a world of opportunities:
Team Lead & Management Roles
Subject Matter Expert Positions
Research & Development Openings
Teaching & Academic Careers
Government and PSU Engineering Posts
These programs are designed not just to enhance your resume, but also to transform your ability to solve complex engineering challenges in real-time.
Why University Vidya?
Navigating through various options for online M.Tech for working professionals can be confusing. University Vidya simplifies your search by offering: verified programs from accredited institutions, personalized counseling based on your career goals, up-to-date course details and guidance, and end-to-end support through the admission process. When it comes to choosing a trusted platform for education planning, University Vidya is a name professionals rely on. With a team of experienced academic advisors, a commitment to transparency, and a student-first approach, University Vidya ensures that every learner makes informed decisions aligned with their professional growth and future aspirations.
2 notes
·
View notes
Note
How is the process of learning In-house game engines once you get into an AAA studio? Do they immediately put you in production to learn as you go, or does it take some weeks before allocating you to a project?
The onboarding process is a little of everything you say. Whenever I start a new job, there's the new hire administrative tasks I need to get done like signing paperwork and doing harassment/DEI/office safety training and there's the actual "this is what they hired me to do" learning process where I learn how the workflow works so that I can start being productive. We'll ignore the administrative stuff and focus on the productivity onboarding.
The first thing that any new hire has to do is get the project synced to the latest safe build and get the game running. Without being able to run the game, we can't make or test any of the changes we will inevitably need to make. This often entails fiddling with a bunch of workstation and network settings in order to make sure all of the files are where the game expects them to be, all of the necessary software is installed and ready, and so on. Getting an in-development game running can take quite some time (I've seen whole days lost in some cases) given how much disk space these games can take (and therefore how long it takes to download all of those files from the depot) and how complex the workflow can be.
Once the new hire has the game up and running and has familiarized herself with the game's controls and such, it's time to start reading documentation for the internal tools and workflow - how the content is made, how the work is done, what the working process is, how to check your work, who to contact in case of questions. At this point, the lead usually assigns an introductory task or two to the new hire - a small task for her to get her feet wet and to provide some guidance while looking through the system and making some actual changes.
After this initial process of learning > making changes > testing > submitting the fix, the process repeats with newer and more complicated tasks as the new hire's lead deals out new assignments. As the new hire completes more tasks, she learns more about the tools, the workflow, and the team. That knowledge and experience is then considered when increasing the scope of her tasks until she's reached the level of productivity expected of a dev in her role.
If you think this sounds a lot like the [minimum competency for joining a team] post from a while back that I wrote, you're absolutely right. We use this exact process to bring a new hire onto our team because it's the same goal - we have someone who (we hope) is dedicated to working on the game and helping us carry it to completion.
[Join us on Discord] and/or [Support us on Patreon]
Got a burning question you want answered?
Short questions: Ask a Game Dev on Twitter
Long questions: Ask a Game Dev on Tumblr
Frequent Questions: The FAQ
#new hires#working in the game industry#getting a job in the game industry#how things work#assembling a team
14 notes
·
View notes
Text
Congratulate me! I've gotten to 80% in the software training unit for my scoping class!
After several of the driest lessons imaginable about what all the different things in all the various toolbars do, I've lately been working through lessons about adding words to the program's dictionary, working with globals (basically: telling the program to always translate certain keystrokes from the reporter in a certain way, useful for things like if they often make the same misstrokes or to not have to keep correcting Johnson to Jonson every time in a particular case, etc.), and setting up macros (basically: setting up your own keyboard shortcuts to do things that would otherwise take a lot of navigating through menus and such).
All of these are very useful, and I can absolutely see the practical application, though I'm getting a bit worried about remembering how to do all of this stuff for the final exam D:
I think I have three lessons left before the big scary test ._.
#what's the scope?#as usual i'm constantly plagued by the plethora of typos in the quizzes#but after asking a couple times whether i should post the typos in the facebook group or email them directly to the teacher#and not getting any sort of response back...i'm giving up on that front :/
10 notes
·
View notes
Text
ADCA (Advanced Diploma in Computer Applications) Full Form, Eligibility, Duration, Syllabus, Scope
What is ADCA? ADCA full form is Advanced Diploma in Computer Applications. ADCA is a comprehensive diploma program designed to provide foundational and intermediate knowledge of computer applications. It typically covers areas such as:
Office productivity software (MS Word, Excel, PowerPoint)
Basic programming (often C, C++, or Python)
Database management
Accounting software (like Tally with GST)
Web design basics (HTML/CSS)
Internet and email use
Basic graphics and multimedia tools
The course usually spans 12 months, is divided into two semesters, and is available through various private institutes, training centers, and some state-affiliated education boards across India. ADCA course fee ranges between Rs. 10,000 to Rs. 15,000, depending on the institution’s quality and location.
Who Should Take This Course?
ADCA is ideal for:
Students (10th/12th pass) seeking a professional skill to enhance employability
Job seekers aiming for entry-level roles in IT support, data entry, or office administration
Small business owners want to manage their accounting, design, or office tasks.
Working professionals looking to upskill in computer usage and basic programming.
Beginners in IT who want a low-cost and practical entry point into the digital workforce
What is the use of ADCA?
In an era dominated by digital transformation, ADCA holds increasing relevance:
Digital Literacy: It builds foundational digital skills critical for nearly every job today.
Improves Workplace Efficiency
Learning office tools like MS Word, Excel, and email helps you work faster and smarter. These skills are helpful in many jobs—especially in schools, offices, shops, and banks—where digital work is a daily routine.
Boosts Employability
Today, most jobs—even non-technical ones—require basic computer knowledge. ADCA gives you the skills employers expect, like using a computer, typing, handling data, and doing simple digital tasks.
Helps Small Business Owners and Entrepreneurs
If you run a shop or business, ADCA helps you manage accounts, create invoices, design flyers, and even make a simple website. It gives you the digital tools to grow your business and save money by doing tasks yourself.
Bridging the Skill Gap: Helps youth in semi-urban and rural areas gain access to IT careers without needing a full degree.
Course Duration & Eligibility
Duration: 12 Months (Typically 2 Semesters)
Eligibility: 10th / 12th pass or equivalent
ADCA Computer Course Syllabus
1. Fundamentals of Computer
Introduction to Computers
Computer Architecture
Computer Peripherals
Computer Hardware and Software
2. Operating Systems (OS)
Windows
Linux/Unix
DOS
3. Programming Languages
C
C++
Java
Python
4. Web Technologies
HTML, CSS, and JavaScript
Web Development Tools
Server-side Scripting (PHP, ASP.NET, Node.js)
Database Connectivity (MySQL, SQL Server)
5. Database Management System (DBMS)
Introduction to DBMS
SQL and Database Design
Data Security and Integrity
6. Software Engineering
Software Development Life Cycle (SDLC)
Software Testing
Project Management
7. Networking Concepts
Basics of Networking
TCP/IP Protocol Suite
Network Security
8. Mobile App Development
Introduction to Mobile App Development
Android Development
iOS Development
9. Data Structures and Algorithms
Basic Data Structures (Arrays, Linked Lists, Trees)
Algorithm Design and Analysis
10. Cyber Security
Introduction to Cybersecurity
Security Threats and Countermeasures
11. Soft Skills and Communication
Effective Communication
Presentation Skills
Teamwork and Leadership
12. Project Work
Practical Application of Knowledge Acquired Throughout the Course
ADCA Course Module & Topics Covered:
The Detail for an Advanced Diploma in Computer Applications (ADCA) course includes topics such as: ModuleTopics CoveredFundamentals of ComputersBasic concepts, architecture, and peripheralsOperating SystemsWindows, Linux, and DOSProgramming LanguagesC, C++, Java, PythonWeb TechnologiesHTML, CSS, JavaScript, PHP, SQLDatabase ManagementSQL, database design, and securitySoftware EngineeringSDLC, testing, project managementNetworkingBasics of networking, TCP/IP, and network securityMobile App DevelopmentAndroid/iOS development basicsData Structures & AlgorithmsArrays, linked lists, trees, algorithmsCyber SecurityIntroduction to threats and countermeasuresSoft SkillsCommunication, presentation, teamworkProject WorkPractical applications
Why Choose ADCA?
The Advanced Diploma in Computer Application (ADCA) opens up numerous opportunities in the ever-growing field of IT. Here is a look at the scope and career prospects for individuals who complete this course:
Scope of ADCA
Wide Range of Skills: The ADCA course teaches students useful computer skills like using software, basic programming, managing data, building websites, and understanding online safety. These skills help students work in many different jobs.
High Job Demand: As more businesses use technology, the need for trained computer professionals is growing. ADCA graduates can find jobs in software, IT services, schools, banks, hospitals, and more.
Foundation for Advanced Studies: The ADCA course lays a solid foundation for further studies in IT. Graduates can pursue advanced diplomas and undergraduate and postgraduate degrees in computer science, information technology, and related fields.
Career Prospects
ADCA graduates have a wide range of career options available to them. Some of the common job roles include:
Software Developer: Develop and maintain software applications using programming languages learned during the course, such as C, C++, Java, and Python.
Web Developer: Design and develop websites and web applications using HTML, CSS, JavaScript, and server-side scripting languages.
Database Administrator: Manage and maintain databases, ensuring data security, integrity, and efficient performance.
IT Support Specialist: Provide technical support and troubleshooting assistance for computer systems, software, and networks.
Network Administrator: Oversee and manage an organization’s computer networks, ensuring smooth and secure operations.
Cybersecurity Analyst: Protect an organization’s computer systems and networks from cyber threats by implementing security measures and monitoring for vulnerabilities.
Mobile App Developer: Create and maintain mobile applications for Android and iOS platforms.
Project Manager: Manage IT projects, ensuring they are completed on time, within budget, and meet the desired quality standards.
Data Analyst: Analyze and interpret data to help organizations make informed decisions.
Educator/Trainer: Teach computer applications and IT courses in schools, colleges, or training centers.
Which is Better DCA or ADCA?
Course Level
Entry-Level Course: DCA is perfect for beginners who want to learn basic computer skills. It covers essential tools for office work, including MS Office, internet usage, and typing.
What You will Learn:
MS Word, Excel, PowerPoint
Internet basics & email
Typing and computer fundamentals
ADCA (Advanced Diploma in Computer Applications)
Intermediate-Level Course: ADCA builds on what you learned in DCA. It offers more in-depth training in IT skills, making it ideal for those wanting to enhance their programming, web design, and accounting knowledge.
What You will Learn:
Advanced MS Office
Programming basics (C/C++)
Web design (HTML, CSS)
Database management and Tally with GST
Syllabus: Includes everything from DCA plus programming (C/C++), web design (HTML/CSS), database management (MySQL), accounting software (Tally), and graphic design (Photoshop).
2. Course Duration
DCA:
Typically, it lasts 6 months (may vary depending on the institute or location).
ADCA:
Generally spans 12 months, divided into two semesters, offering more detailed training over a more extended period.
3. Eligibility
DCA:
Open to anyone with a 10th-grade pass or equivalent. It is ideal for individuals with minimal or no prior computer knowledge.
ADCA:
Typically requires a 10th/12th pass or a completed DCA. ADCA is more suitable for students who have a basic understanding of computers and wish to learn more advanced skills.
4. Skills Acquired
DCA:
Basic computer skills such as:
Microsoft Office (Word, Excel, PowerPoint)
Internet usage, email management
Typing skills
ADCA:
In addition to DCA skills, ADCA covers:
Programming (C/C++ or Python)
Web Design (HTML, CSS)
Database management (MySQL)
Tally with GST (Accounting Software)
Basic graphic design tools like Photoshop
Project work and real-world applications
5. Career Opportunities
DCA:
Ideal for entry-level roles like:
Data Entry Operator
Office Assistant
Computer Operator
Basic technical support
ADCA:
Opens up higher-level job opportunities, including:
Junior Programmer
Web Designer
Accounting Clerk (with Tally skills)
Junior Database Administrator
Graphic Designer (basic)
IT Support Specialist
6. Salary Expectations
DCA:
Entry-level salaries for DCA graduates typically range from ?8,000 to ?15,000 per month, depending on the job role and location.
ADCA:
Graduates of ADCA can expect higher starting salaries, generally ranging from ?15,000 to ?25,000+ per month, depending on the specialization (e.g., programming, web design).
7. Which One is Better?
DCA is suitable for:
Individuals who are new to computers
People looking for entry-level office jobs
Those on a limited budget and time
ADCA is suitable for:
People looking to specialize in IT and office-related work
Those interested in roles requiring programming, web design, or accounting skills
Individuals aiming for a broader skill set and higher-paying jobs
1 note
·
View note
Text
Lean vs. Waterfall Business Models: Choosing the Right Approach for Your Venture

When starting or scaling a business, one of the most critical decisions you’ll make is choosing the operational approach that aligns with your goals, resources, and industry demands. Two popular frameworks that often guide entrepreneurs are the Lean and Waterfall business models. Understanding their principles, advantages, and challenges can empower you to select the model that best suits your vision and market.
What is the Lean Business Model?
The Lean business model prioritizes efficiency, adaptability, and continuous improvement. It focuses on creating value for the customer while minimizing waste. Inspired by lean manufacturing principles, particularly those pioneered by Toyota, this model has become a cornerstone of modern startups and innovation-driven enterprises.
Key Principles of the Lean Model:
Validated Learning: Experimentation and customer feedback drive product and process development.
Build-Measure-Learn Cycle: Rapid prototyping allows for iterative improvements.
Customer-Centric Approach: Emphasis on understanding and addressing customer needs.
Waste Reduction: Eliminating activities and resources that don’t add value.
Advantages of Lean:
Cost Efficiency: By focusing on essential features and avoiding overproduction, businesses conserve resources.
Flexibility: Quick pivots are possible when market demands or customer preferences shift.
Speed to Market: Minimal Viable Products (MVPs) enable businesses to launch quickly and refine over time.
Challenges of Lean:
High Uncertainty: Iterative processes may result in unpredictability.
Resource Intensity: Constant feedback loops and adjustments require dedicated time and effort.
Scalability Issues: Lean is ideal for early-stage businesses but may need adaptation for large-scale operations.
What is the Waterfall Business Model?
The Waterfall business model, rooted in traditional project management, follows a linear and sequential approach. This model is structured around defined stages, where each phase must be completed before moving to the next. While it originated in industries like construction and software development, it’s also applicable to businesses requiring meticulous planning and execution.
Key Principles of the Waterfall Model:
Sequential Progression: Projects move from concept to completion in defined steps.
Detailed Documentation: Comprehensive plans, budgets, and timelines are created upfront.
Defined Deliverables: Clear milestones ensure all tasks are completed in order.
Stability: A fixed plan minimizes changes during the process.
Advantages of Waterfall:
Predictability: Clear timelines and budgets enhance planning and stakeholder confidence.
Quality Assurance: Extensive documentation ensures thorough testing and evaluation.
Ease of Implementation: Ideal for projects with well-defined requirements.
Challenges of Waterfall:
Rigidity: Limited flexibility to adapt to changing market conditions.
Delayed Feedback: Customer input often comes late, increasing the risk of misalignment.
Time-Intensive: Sequential phases may lead to longer development cycles.
How to Choose Between Lean and Waterfall
The choice between Lean and Waterfall depends on your business’s nature, goals, and industry.
Lean is Ideal For:
Startups and innovative ventures with evolving market demands.
Projects where customer feedback is essential.
Teams prioritizing speed and adaptability.
Waterfall is Ideal For:
Established businesses with fixed goals and budgets.
Industries like construction, healthcare, or manufacturing, where precision is critical.
Long-term projects requiring robust planning.
Conclusion
Both the Lean and Waterfall business models offer unique advantages and come with their own set of challenges. While the Lean model fosters innovation and flexibility, the Waterfall approach ensures stability and predictability. Entrepreneurs should carefully evaluate their project’s scope, resources, and objectives before committing to a framework. By aligning your operational strategy with your business’s needs, you set the stage for sustainable growth and success.
2 notes
·
View notes
Text
Best Practices for Successful Automation Testing Implementation
Automation testing is an essential part of modern-day software development that accelerates delivery, reduces manual work, and improves software quality. But success in automation testing is not assured, it should be achieved by proper planning and execution along with proper compliance of best practices.
In this blog, we will talk about key actionable strategies and best practices to ensure the successful implementation of automation testing in your projects.
1. Start with a Clear Strategy
Jumping straight into automation testing without a clear strategy will not always yield the desired results. Define the following:
Objectives: Define the goals of the automation, whether it is about shorter test cycles, improved test coverage or eliminating human error.
Scope: Set the areas of your application for automation and focus much on areas that have a high impact like regression and functional testing.
Stakeholders: Get early involvement from the development, QA and product teams to avoid misalignment regarding expectations.
A well-formed strategy helps guide the way and make sure everyone involved is aligned.
2. Prioritize the Right Test Cases for Automation
One of automation testing’s biggest mistakes with it is to use automation for everything. Rather than that, shape your test cases to that of:
Are monotonous and time-consuming.
Wherein critical for application functionality
Have stable requirements.
Some of these tests are regression tests, smoke tests, data-driven tests, etc. Do not automate the exploratory or highly dynamic tests that often get changed.
3. Choose the Right Automation Tools
The effectiveness of your automation testing initiative highly relies on appropriate tools selection. Look for tools that:
Support the technology stack of your application (e.g., web, mobile, APIs).
Give the flexibility to expand your project.
Offer extensive reporting, reusability of scripts, and run across browsers.
GhostQA is one example of a codeless platform that works well for teams across the skill set. GhostQA can let you focus on what matters and Auto Healing reduces your maintenance to enforce.
4. Build a Strong Automation Framework
An automation framework is the backbone of your automation testing process. It helps in standardization, reusability and scalability of test scripts. So, when you start designing your framework, make sure to leave some room for these features:
Modularity: Split test scripts into reusable components
Data-Driven Testing: Use Data-Driven Testing to separate test data from the scripts to provide flexibility.
Error Handling: Install anti-malware solutions to prevent potential threats.
A good framework streamlines collaboration and makes it easier to maintain your tests.
5. Write High-Quality Test Scripts
A good test script decides the reliability of your automation testing. To ensure script quality:
When naming scripts, variables, or methods, use meaningful and descriptive names.
For adaptability, you should leverage parameterization instead of hardcoding these values.
Set up appropriate error-handling procedures for handling unforeseen problems.
Do not add anything unnecessarily, the more complexity, the more difficult it is to debug and maintain.
Tools such as GhostQA minimize the efforts put behind scripting providing no-code possibilities allowing even non-technical users to write robust tests.
6. Regularly Maintain Your Automation Suite
Even though automation testing is a great way to ensure quality in applications, one of its biggest challenges is keeping the test scripts updated with application changes. Keeping your test suite effective and up to date, regular maintenance.
Best practices for maintenance include:
Frequent Reviews: Conduct periodic audit of the test scripts to ensure that they are not outdated.
Version Control: Utilize version control systems to maintain history of your script modifications.
Auto-Healing Features: GhostQA and similar tools can track UI updates and modify scripts to reflect changes with little to no human intervention, minimizing maintenance costs.
Take good care of your automation suite so that it doesn't become a liability.
7. Address Flaky Tests
Flaky tests—tests that pass or fail randomly—are a common issue in automation testing. They reduce trust in test results and take up time when debugging. To address flaky tests:
Dig deeper into what might be the underlying causes — timing problems or dynamic elements.
Use explicit waits instead of static waiting in tests to make them aligned with application behavior.
Prefer smart detection-based tools (GhostQA, to be precise) to eliminate the chances of flaky tests.
This translates into flourish as flakiness and is the most significant impact in strengthening confidence in your automation framework.
8. Ensure Cross-Browser and Cross-Platform Compatibility
Most modern applications work across many browsers and devices, so cross-compatibility testing is a necessity. Your automation testing suite must:
Add test cases for popular browsers like Chrome, Firefox, Edge, and Safari.
Testing across different operating systems on mobile (e.g., iOS/Android).
GhostQA abstracts cross-browser and cross-platform testing so you can verify functionality in several types of environments without repeating yourself.
9. Leverage AI and Smart Automation
AI is revolutionizing automation testing with better efficiency and lesser maintenance cost. Next-generation tools like GhostQA powered by AI offer:
Auto-Healing: Automatically adjust to any changes made to the app;such as modified UI elements
Predictive Analysis: Showcase areas with the most potential high risk to prioritize tests.
Optimized Execution: Run just the tests that yield the most performance insights.
Use AI-Powered Tools as these can help you to increase the efficiency and accuracy of your testing.
10. Monitor and Measure Performance
To measure the effectiveness of your automation testing, you should track key metrics that include:
Test Coverage: Number of automated tests covering application features.
Execution Time: Time taken to execute automated test suites.
Defect Detection Rate: Number of bugs detected in automation testing
Flaky Test Rate: Frequency of inconsistent test results.
Consistent assessment of these metrics helps in discovering the areas of improvement in your automation efforts while also exhibiting the ROI of the same.
Conclusion
So, the right approach of selecting the right tool and plan properly will help to do a successful automation testing implementation. This could be achieved by adopting best practices like prioritizing test cases, maintaining test scripts, making use of the AI-powered tools and collaborating with other stakeholders in the process.
Tools like GhostQA, which come equipped with codeless testing, auto-healing features, and user-friendly interfaces, empower teams of both technical and non-technical backgrounds to streamline their automation processes and devote their attention to shipping quality software.
#automation testing#software testing#test automation#functional testing#automation tools#quality assurance
2 notes
·
View notes