Why Freelance 3D Real Estate Rendering Services are Becoming More Popular for Companies


Real estate professionals are constantly searching for the best strategies to help them close deals faster. If you’ve already exhausted all the standard and traditional marketing methods to no avail, now might be the perfect time to tap into a new world: 3D real estate rendering services.

It’s no secret how highly competitive the real estate industry can get. With the long list of properties available on the market, real estate companies should think of and develop creative means to ensure their listings stand out. This is where freelance 3D real estate rendering services enter the picture. These services specialize in 3D rendering that can help create realistic and lifelike visual representations of properties and homes. The visually captivating 3D renders can come in handy to effectively market listings better compared to regular images or photos.

How 3D real estate rendering works

There are three primary stages in developing 3D-rendered visuals for real estate purposes.

Modeling

Developing an accurate 3D model of a property is the initial step during 3D rendering. Freelance 3D architectural rendering experts use photographs, measurements, and floor plans to come up with 3D models that closely resemble their real-life counterparts. Every feature of the architectural structure is also recreated to the minor details, including the exterior finishes, windows, and doors.

Texturing

The second step involves giving realistic colors and surface textures to the 3D model. All materials, such as stone, metal, and wood, are textured to look authentic. Digital maps are then used to apply the textures that will make the 3D models more lifelike and detailed.

Rendering

Last, a computer will render the textured 3D model into a photorealistic image. The advanced rendering software can simulate light physics to produce realistic angles, reflections, shadows, and lighting. The final result is an eye-catching visual that resembles an actual photograph.

RELATED: 3D Rendering for Marketing Real Estate: What it is and How it Can Improve Your Real Estate Business

Now that you have a good idea about the process involved in 3D real estate rendering, it’s time to learn some of the top reasons why more and more freelance 3D architectural visualization firms are becoming in demand among companies to market their listings.

They boost the exposure of market listings

freelance1

Engaging with 3D content can help boost the exposure and visibility of a market listing. Visually enticing 3D real estate renders have higher chances of getting more engagement, shares, and clicks on different real estate platforms. Freelance 3D real estate services can help make your listings more unforgettable. Furthermore, with the help of 3D visualization services, homebuyers are more likely to remember the properties presented. It can result in more showings, offers, and sales.

They allow more cost-effective marketing campaigns

Today’s freelance 3D real estate services are no longer as expensive as they used to be. Real estate companies can access enticing, powerful, and effective 3D visual content for a fraction of the cost of traditional advertising. It offers exceptional value as far as marketing investment is concerned.

They facilitate virtual tours of properties

Freelance 3D real estate services can also allow prospective buyers to go on virtual tours of properties without needing them to visit each one personally. These service providers can produce virtual staging for architecture services and 3D walkthroughs that put the entire home in the spotlight. Homebuyers can also go on a more immersive experience that can breathe life into listings. In addition, 3D real estate rendering can allow homebuyers to enjoy a convenient remote viewing of potential properties. For real estate companies, it offers an efficient marketing asset for promoting listings to more buyers.

RELATED: Virtual Staging Costs, Service Fees & Architectural Pricing for Real Estate Companies

They help guarantee future-proof marketing

3D real estate content is expected to be the way of the future regarding real estate marketing. With staged photos and virtual tours gaining traction by the day, real estate companies can use 3D to future-proof their marketing efforts.

They highlight the main features of properties

Freelance 3D real estate services give real estate companies a chance to emphasize and showcase features and architectural elements of the property. More detailed 3D real estate models can highlight everything, from the posh finishes to the custom tilework. This level of attention to detail is something that regular photos can never capture, no matter how hard they try. Strategic 3D real estate rendering can draw the attention and interest of the buyers to the most standout features of a property. This can convey details such as floor plans, room dimensions, lighting schemes, etc. These can unite to form an emotional connection with prospective buyers.

They produce interactive experiences in 3D

3D real estate rendering allows realtors to develop and offer more interactive 3D experiences for potential buyers. The interactive floor plans, 360 virtual reality house tours, 3D walkthroughs, and more can all offer a more immersive preview than their static counterparts. Again, potential buyers can form stronger connections when these elements are all present.

They make listing representations more memorable

Property listings that feature 3D-rendered images are more likely to linger in the minds of potential buyers. It can increase the return on investment by allowing more shows, engagement, and sales.

RELATED: How 3D Virtual Reality is Changing the Real Estate Industry

They can showcase both interior and exterior spaces

Freelance 3D real estate offerings provide a smooth display of interior and exterior aspects. Exterior photorealistic rendering experts highlight the property’s curb appeal and surrounding environments. Meanwhile, 3D interior rendering professionals focus on the dwelling’s spaces, furniture, arrangement, and design features. 3D real estate rendering can stitch together all of these spaces into a unified and single visualization. It gives buyers a complete view of the property that static photos can never replicate.

freelance2

They can stage property listings virtually

Whether you like it or not, home staging is time-consuming and expensive. Freelance 3D visualization designers offer a virtual staging solution to help real estate companies save money and time. Any property could be staged even without physical décor or furniture. Real estate agents use virtual staging to create realistic décor and furnishings to fill empty spaces and areas. It showcases the fullest potential of a property and helps buyers get a good visualization of the entire space.

Tips to find the best freelance 3D real estate services

Real estate companies and realtors must find the best freelance 3D real estate services they can partner with to harness 3D rendering and its power to the fullest. Below are some helpful tips to point you toward the exemplary freelance service that can simplify the 3D real estate rendering process for you.

  • Check and verify their experience in real estate projects.

Before anything else, it’s essential to look for a freelance provider of 3D real estate services that has extensive rendering experience for real estate in particular. This will assure you they have a good grasp of the visualization needs to market properties and homes.

  • Browse their portfolio for 3D real estate rendering.

Check the samples of past real estate projects in the service provider’s portfolio. It will give you a good idea and glimpse of their visual capabilities and overall quality.

  • Confirm if there are 3D walkthroughs offered.

As much as possible, you must look for freelance 3D real estate services offering interactive 3D walkthroughs and the usual still renders. These walkthroughs make room for better visibility and more engagement.

  • Look for a quick turnaround time.

Every time you market active listings, sticking to the timelines is critical. Choose freelance 3D real estate services that can immediately provide top-of-the-line renders without jeopardizing the quality.

  • Read reviews and testimonials.

Positive reviews and testimonials from previous clients are always a good indication of the service standards and reliability of the freelance 3D real estate service provider. Try to look for one with a long list of satisfied and happy clients.

freelance3

RELATED: Increased Demand for 3D Real Estate Rendering Services and Their Impact on the Market

The bottom line

Companies that understand the popularity of 3D real estate services and leverage their potential for their listings can expect to gain a significant age over their competition. With the ability to attractively showcase properties, 3D real estate renders are undoubtedly an indispensable marketing asset. These renders can connect better with the buyers by offering completely immersive previews. With modern technology’s continuous development and advancement, it’s no surprise that it has become the favorite and in-demand option for progressive real estate companies.

How Cad Crowd can help

Cad Crowd is the platform you can trust to connect you with the top freelance 3D real estate services that can help showcase your listings and guarantee more closed deals as soon as possible. Contact us today and allow us to help you with your following projects.

NHL Breaks the Ice with Matrox, Vizrt & AWS for Cutting-Edge Live Clou


The blog post “NHL breaks the ice with cutting-edge live cloud production powered by AWS” by Andrew Reich, Alex Murel, and Luke Potter for Amazon Web Series details how the National Hockey League (NHL) has revolutionized live sports production by utilizing cloud technology from Amazon Web Services (AWS). The NHL’s transition to cloud-based production marks a significant shift from the traditional method of using production trucks and fixed control rooms, offering enhanced efficiency, scalability, and sustainability.

Key Highlights:

  1. Historic Cloud-Based Broadcast:

    • On March 22, the NHL produced the first fully cloud-based live professional sports broadcast in North America for a game between the Washington Capitals and the Carolina Hurricanes.
    • The live broadcast was produced in 1080p using AWS technologies, managed by a remote team, demonstrating that cloud-based production can match traditional hardware functionality.
  2. Innovative Workflow:

    • The NHL’s Live Cloud Production (LCP) workflow enabled video and audio switching, replay, and graphics integration in the cloud.
    • A pilot initiative called “NHL EDGE Unlocked” showcased advanced data-driven storytelling with non-traditional camera angles and real-time puck and player tracking.
  3. Foundation and Collaboration:

    • The NHL’s partnership with AWS began in 2021, with AWS serving as the league’s Official Cloud Infrastructure Provider.
    • Key developments include the NHL EDGE IQ stats and a cloud-based encoding and scheduling pipeline, facilitating live game feeds from venues to AWS.
  4. Remote Collaboration and Flexibility:

    • The NHL successfully reduced on-site personnel and equipment, demonstrating remote collaboration’s potential by using minimal on-site gear.
    • A single AWS employee managed technical coordination at the arena, while production crews operated from remote locations like the NHL Network studios in New Jersey and NHL headquarters in Manhattan.
  5. Sustainability and Scalability:

    • The LCP significantly lowers carbon emissions and travel costs by reducing the need for production trucks and on-site staff.
    • It offers scalability for major events like the Stanley Cup Playoffs, enabling multiple feeds in different languages and formats with reduced on-site energy consumption.
  6. Enhanced Fan Experience:

    • The flexibility of cloud production allows for customized broadcasts tailored to various audience preferences, including avid fans, casual viewers, and those interested in specific statistics or interactive features.
    • Advanced analytics and real-time access to footage enhance the storytelling and viewing experience, making content easily accessible and customizable.
  7. Technical Execution:

    • The broadcast involved feeds from ten on-site cameras encoded and sent to AWS, where video was processed and integrated with various production elements.
    • The system utilized technologies like AWS Elemental MediaConnect, Vizrt’s TriCaster Vectar, Viz Trio, and Evertz DreamCatcher for production switching, graphics, and replay.

The NHL’s partnership with AWS represents a pioneering step towards more sustainable, flexible, and immersive live sports broadcasts, setting a new standard in the industry.

Read the full article by Andrew Reich, Alex Norman, and Luke Potter for Amazon Web Services HERE

Visual Studio Code July 2022


Update 1.70.1: The update addresses these issues.

Update 1.70.2: The update addresses these issues.

Update 1.70.3: This update is only available for Windows 7 users and is the last release supporting Windows 7.

Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap


Welcome to the July 2022 release of Visual Studio Code. There are many updates in this version that we hope you’ll like, some of the key highlights include:

If you’d like to read these release notes online, go to Updates on code.visualstudio.com.

Watch the release party: Listen in as the VS Code team discusses some of the new features. You can find the recording of the event on our YouTube channel.

Insiders: Want to try new features as soon as possible? You can download the nightly Insiders build and try the latest updates as soon as they are available.

Workbench

Easier title bar customization

For those using the custom title bar (the default on Windows, macOS, and the web), you may have noticed that we are introducing more interactive content to the title bar. While there are already settings to hide each of these elements individually, you can now right-click the title bar to access a context menu that toggles the menu bar (not shown on macOS desktop), Command Center, and layout controls.

title bar context menu

For Windows users expecting the system context menu, the menu can still be triggered by right-clicking the VS Code icon in the top left corner of the window or by pressing Alt+Space. Mouse position is used to determine the behavior when triggering with Alt+Space, so the custom menu will appear if it sits on top of the title bar.

system context menu

For Linux users, due to issue #156397, the empty space in the title bar will not open a context menu. You must right-click on one of the items in the title bar that you would like to hide.

With the addition of the Command Center, we tried shrinking the menu bar to a hamburger menu to make space. After hearing user feedback, we switched back to the old menu bar folding behavior until most of the menu is collapsed, and only then switch to the hamburger menu.

responsive menu bar folding

Accessible macOS title bar zoom

Also as part of improving the Command Center experience, when interactive components are present in the title bar on macOS, the title bar will now zoom with the rest of the UI for increased accessibility.

macOS title bar zooming

Fold selection

The command Create Manual Folding Ranges from Selection (⌘K ⌘, (Windows, Linux Ctrl+K Ctrl+,)) creates a folding range from the currently selected lines and collapses it. The range is called a manual folding range and goes on top of the ranges computed by folding providers.

Manual folding ranges can be removed again with the command Remove Manual Folding Ranges (⌘K ⌘. (Windows, Linux Ctrl+K Ctrl+.)).

manual folding ranges

Manual folding ranges are especially useful for cases when there isn’t programming language support for folding.

Preserve folded ranges

VS Code now keeps folded ranges, even if the folding range is no longer part of the ranges computed by a folding provider. A typical example is when the user comments out the file, starts a string literal, or creates a syntax error that makes it impossible to create all the ranges. Such folded ranges become ‘recovered’ ranges. They are removed once the folding provider comes back with ranges at the same location or by using the command Remove Manual Folding Ranges.

restored folding ranges

Hide folding controls

The folding controls in the gutter can now be hidden with the setting "editor.showFoldingControls": "never". Folding ranges can still be expanded and collapsed using the folding commands and shortcuts.

3-way merge editor improvements

We continued polishing the new 3-way merge editor and enabled it by default in this release. The merge editor can be opened by clicking on a conflicting file in the Source Control view.

Highlights include new commands to accept all changes from one side, improved context menus, enhanced diff colors, and a greater emphasis on conflicting versus non-conflicting changes.

We also started exploring alternative diffing algorithms to improve precision of merge conflicts. If you encounter suboptimal change highlighting or alignment in either the diff or the merge editor, we would like to record these cases in our GitHub issue tracker!

Command line option merge

You can now use command line options to bring up the merge editor in VS Code:

-m --merge <path1> <path2> <base> <result> Perform a three-way merge by providing paths for two modified versions of a file, the common origin of both modified versions, and the output file to save merge results.

This enables you to use VS Code as a merge tool for Git, for example, if you configure this in .gitconfig:

[merge]
  tool = code
[mergetool "code"]
  cmd = code --wait --merge $REMOTE $LOCAL $BASE $MERGED

Search file decorations

Search results in the Search view now feature file decorations and colors on the right to express the file’s problems and source control information. This is similar to the file decorations already shown in the File Explorer.

Search file decorations

Search multiple selection

The Search view now also supports multi-select. Any actions (for example, dismiss or replace) that you perform on one result in the selection will also be performed on the other selected items.

Search view multiple selection with exclude and accept actions

Tree find control

Tree views, such as the File Explorer, now support the Find control. You can press ⌥⌘F (Windows, Linux Ctrl+Alt+F) inside trees to pop up the Find control. You can use the Find control to highlight matched elements or toggle the Filter button to hide all elements that do not match the search term.

Tree Find control showing search and filter

Note: If you are used to opening the Find control in the editor when invoking ⌥⌘F (Windows, Linux Ctrl+Alt+F) while the File Explorer has focus, you can configure your keybindings accordingly:

{
  "key": "cmd+f", // "ctrl+f" on Windows/Linux
  "command": "-list.find",
  "when": "listFocus && listSupportsFind"
}

Arbitrary file creations via New File

The File > New File… (or New File… link on the Welcome page) experience has been improved to allow for arbitrary file creation. You can now type a file name in the quick input box to create the file on disk.

A input box with test.js inputted into it and the entry New File(test.js) selected

Terminal

Shell integration enabled by default

Shell integration’s automatic injection that was moved out of preview last release is now enabled by default. For supported shell setups (most bash/zsh/pwsh configurations), it should all just work without any changes and you should see command decorations:

When shell integration is enabled, blue, red and grey circles appear next to commands run in the terminal

Theme: Sapphire Theme

Note: On Windows, you’ll need PowerShell 7 (pwsh) for shell integration support. You can install via https://aka.ms/PSWindows.

If the shell integration features don’t light up automatically, you will need to set up manual installation, which has been simplified in this release.

Automatic injection is enabled when the terminal.integrated.shellIntegration.enabled setting is set to true, add this to your settings.json file to disable the feature:

"terminal.integrated.shellIntegration.enabled": "false"

This will disable only VS Code’s shell integration injection. Even when disabled, if your setup has shell integration enabled for some other terminal that VS Code understands, it will still pick those up. If you don’t like the command and/or scroll bar decorations, you can disable just their display, while still taking advantage of the extra functionality that shell integration brings.

Simplified shell integration manual install

Previously manual install took several steps and was platform and shell specific. The new manual install uses the code CLI to fetch the shell integration script and works cross-platform and when connected to a remote window, meaning you can sync it in your dotfiles and it should just work.

# Manual install on bash
[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path bash)"

You can read more about how to install shell integration for other shells at Terminal shell integration.

More shell integration configuration options

The new setting terminal.integrated.shellIntegration.decorationsEnabled lets you display command decorations in either the gutter, the overviewRuler, or neither. For easy access, you can modify this setting via Configure Command Decorations in a context menu when you click on a decoration (select Toggle visibility to display the options dropdown).

The command decoration context menu contains the new option Configure Command Decorations

You can also configure the default, success, or error icons from the dropdown.

Default color and icon tab settings

The default icon and terminal tab color can be set per folder using terminal.integrated.tabs.defaultIcon and terminal.integrated.tabs.defaultColor.

Extended PowerShell keybindings

There are additional PowerShell keybindings, such as Ctrl+Space, thanks to shell integration. These weren’t possible before due to the lack of VT encoding. Provided that shell integration is working in pwsh, the following keybindings should now work:

  • Ctrl+Space – Defaults to MenuComplete on Windows only.
  • Alt+Space – Defaults to SetMark.
  • Shift+Enter – Defaults to AddLine.
  • Shift+End – Defaults to SelectLine.
  • Shift+Home – Defaults to SelectBackwardsLine.

This applies to all platforms, even Linux/macOS where those keybindings aren’t normally possible. The defaults can always be reset in your pwsh profile with Set-PSReadLineKeyHandler. If there are additional keybindings that you expect, please let us know.

When shell integration is enabled, we’re aiming run recent command to be a cross-shell drop in replacement for the shell’s reverse search (Ctrl+R). There is a new contiguous search mode that is the default when triggering the command. This behaves like Ctrl+R in most shells, with the option of switching back to fuzzy search:

Run recent command's contiguous search will match the search term exactly, toggle Fuzzy Search to switch to fuzzy searching

The new inTerminalRunCommandPicker context key is available that allows setting up a keybinding like Ctrl+R to go to the next match. For example, the following keybindings are now a fairly complete replacement for your shell’s reverse search, with Ctrl+Alt+R as a fallback to the old behavior:

{ "key": "ctrl+r",     "command": "workbench.action.terminal.runRecentCommand", "when": "terminalFocus" },
{ "key": "ctrl+alt+r", "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u0012"/*^R*/ }, "when": "terminalFocus" },
{ "key": "ctrl+r",     "command": "workbench.action.quickOpenNavigateNextInViewPicker", "when": "inQuickOpen && inTerminalRunCommandPicker" },
{ "key": "ctrl+c",     "command": "workbench.action.closeQuickOpen", "when": "inQuickOpen && inTerminalRunCommandPicker" },

Multi-line commands now display a new line symbol where appropriate and will also use bracketed paste mode, meaning they are treated as if they were pasted for supporting shells. This typically means they will all be added to the same prompt instead of executing them separately.

Run recent command now shows the "Return Symbol" Unicode character (⏎, U+23CE) to visualize new lines

Other shell integration improvements

Here are the smaller improvements to shell integration:

  • Command navigation has improved visual feedback, showing the “focus border” briefly and then keeping a persistent rectangle in the gutter to help highlight the position in the buffer.

    A solid rectangle the color of your theme's focus color now appears to the left of the command being navigated to

  • The new workbench.action.terminal.copyLastCommand command is available to allow a keybinding to copy the last command’s output (shortcut for Ctrl/Cmd+Shift+Up, Ctrl/Cmd+C, Escape, Ctrl/Cmd+End).

  • Bash shell integration:

    • More $PROMPT_COMMAND formats are supported.
    • Shell integration should work even better when the bash-preexec helper is being used already.

Rendering improvements

Several improvements were made to terminal rendering when GPU acceleration is enabled:

  • Semi-circle Powerline symbols are now custom rendered. Like the arrow symbols in the previous release, these should blend seamlessly with adjacent cells and extend to the height of the cell even when line height is used.

    Semi-circle Powerline symbols now render without needing to configure a font

  • Round cornered box drawing characters (, , , ) now use a smoother curve.

    These round corner symbols now render as perfect 1/4 circles

  • Improved clipping of glyphs when the background color changes, this was commonly seen when npm outputs a warning.

    Wide characters like W would sometimes escape the background of a cell. For example, when the background of the text was yellow, the W in "WARN" could show unexpected yellow pixels in the top left. The After image shows that it is now fixed

  • Similar to the clipping problem above, there was an issue where the anti-aliasing in some glyphs would overlap other characters and degrade the visuals. This problem is most easily illustrated using a background example like above. A pixel in the k of Work could also escape the bounds of the cell in the other direction. This pixel will no longer appear in the glyph at all since it’s removed for being nearly the same color as the background.

    A pixel in  could overlap with the cell to the right, in this case that pixel may not be rendered at all if the difference in color and the background is small

Source Control

Action button improvements

We continued to polish the Source Control action button based on user feedback:

  • The Sync Changes action button is only shown when there is a high degree of certainty that the local branch is either ahead or behind the remote tracking branch.
  • The Commit action button is only enabled based on the list of changed resources while factoring in the smart commit settings:
    • git.enableSmartCommit
    • git.suggestSmartCommit
    • git.smartCommitChanges
  • The Commit action button icon is updated based on the branch protection settings:
    • git.branchProtection
    • git.branchProtectionPrompt

Improved rebase conflict resolution

This milestone we addressed some smaller issues in the rebase flow when resolving merge conflicts. Users should now be able to continue the rebase operation using the Commit button in the Source Control view after resolving all merge conflicts.

Commit input field spell checking

This milestone we confirmed that all the necessary extension APIs are available to support spell checking in the commit input field. We reached out to the authors of two popular spell checking extensions and submitted pull requests illustrating how to update their extensions to provide spell checking for commit description text.

Debugging

JavaScript debugging

When you create a launch config to debug a JavaScript/TypeScript program, you can set "console": "integratedTerminal" to run that program in a terminal (rather than the process being spawned directly). A few months ago, we noticed that "args" in the launch.json configuration were partly escaped for the shell, but not entirely. This meant that attempting to pass an argument to your program could accidentally trigger special behavior in your shell. We cleaned this up, then realized that setting arguments that include characters with special meanings for the shell is a useful thing to do, and that some users were relying on this behavior.

We debated the correct fix and decided that this behavior should be opt-in, and that changes to the Debug Adapter Protocol (DAP) were required. We made this change to DAP, implemented it in VS Code and in js-debug, and other debug adapters should be soon to follow.

Here’s how to use the new behavior in a node launch configuration:

{
    "type": "node",
    "console": "integratedTerminal",
    ...

    // If you pass args as a single string, the characters will not be escaped for the terminal,
    // so the command in backticks will be evaluated, and output will be redirected to "outfile".
    // The user is responsible for knowing the type of shell that this will be run in,
    // and doing any escaping necessary.
    "args": "`echo hello` > outfile",

    // If you pass args as an array, the characters will be escaped for the terminal,
    // so that the program receives them verbatim.
    "args": ["`echo hello` > outfile"]
}

Picker for debug sessions

When debugging, you can now run Debug: Select Debug Session in the Command Palette. This shows a picker with your active debug sessions, which you can use to search and filter your individual debug sessions. The description for each picker item will show the session that spawned it, if applicable.

Selecting an item in the picker will focus the debug session in the Call Stack view. Debug actions (for example, Pause, Step, Restart, Stop) will be performed on the focused debug session. Selecting a session also shows the session’s Debug Console.

Debug Session Picker Demo

Tasks

Filter support for Run Task command

The Tasks: Run Task (workbench.action.tasks.runTask) action supports filtering by task name and type for a more concise and configurable way to select and execute tasks.

For example:

{
  "key": "ctrl+h",
  "command": "workbench.action.tasks.runTask",
  "args": {
    "task": "VS Code - Build",
    "type": "npm"
  }
}

Improved automatic tasks flow

The Trusted Workspace feature allows VS Code to simplify the flow for running automatic tasks. By default, automatic tasks will run if a folder is trusted and you’ll be prompt once per folder otherwise. This behavior can be configured with the task.allowAutomaticTasks setting (default auto) to always (on) or never (off) prompt before running an automatic task.

Languages

Keep newlines when formatting JSON

You can now keep the initial line position when formatting a line in a JSON documents. For example, an array containing values on one line will still keep these values on the same line after formatting. Extra line breaks (newlines) in JSON files are also preserved. To enable this feature, set the option JSON > Format: Keep Lines in the Setting editor.

Notebooks

Go to Most Recently Failed Cell

If your most recently run cell failed, there is now a button that will jump to that cell. You can also run Notebook: Go to Most Recently Failed Cell to perform the same action.

This is useful when you run a group of cells and want to know which cell failed and halted the group execution.

Go To Most Recently Failed Cell Demo

Notebook Markdown Preview attachment rendering

It is now possible to render embedded base64 images within a Jupyter notebook.

Images pasted into a Jupyter notebook and referenced via ![image alt-text](attachment:image.png) will now be rendered as intended within VS Code notebooks.

The following Markdown source code:

Notebook Markdown cell source code with image link

Will be rendered as:

Notebool Markdown cell preview with attachment rendered

The Copy vscode.dev Link command in the Share submenu now supports notebook links.

VS Code for the Web

Set Display Language

You can now set the display language of the browser using the Set Display Language button available on the language pack extension in the Extensions view.

Set Display Language button on a language pack in the Extensions view

Once set, you can clear the display language by using the Clear Display Language button on the currently set language pack extension.

Clear Display Language button on the current language pack in the Extensions view

Contributions to extensions

Python

Get started experience

The Python extension walkthrough now smoothly transitions users to installing Python if they need to, and selecting it. Microsoft Store or an appropriate walkthrough tile is opened when Python is not installed and users can auto-run the displayed instructions. Any prompts related to interpreters are only shown when a user action requires an interpreter, and not on start-up. Also, UI prompts have been improved to be more precise about errors and suggested changes.

Python in-product Get started walkthrough

Interpreter information in the Status bar

A new setting python.interpreter.infoVisibility was added, which controls when information about the selected interpreter is displayed in the Status bar. By default, interpreter information will only be shown when Python-related files are opened (onPythonRelated). It can be set to always to revert to the old behavior where the selected interpreter is displayed regardless of what file is opened. A warning status is added to indicate situations when the selected interpreter is invalid:

Interpreter information in the Status bar

Automatic debug configurations

The Python extension now supports automatic debug configuration that analyzes the current project and provides you with a debug configuration that does not require additional modification.

The extension recognizes Django, Flask, and FastApi projects, as well as simple Python files.

You can learn more about automatic debug configuration and some of the recent improvements.

Flask automatic debug configuration

Experimental extension: WWBD

There is a new experimental Python extension named WWBD that acts as a sandbox for Python environment workflow ideas. As of now, there is a Create Environment command for virtual environments to see if a single command can help users set up a new virtual environment (see the WWBD extension page for the full details and other extension features). You can read the Ideas category in the project repository for other ideas that are being considered, including conda support.

Jupyter

Copy plot images to clipboard

It is now possible in the Jupyter extension to copy plots in cell outputs to the clipboard. Make sure you have the correct presentation selected as only PNG output is currently supported:

Select image/png when copying plot to the clipboard

Once you have set the correct presentation type, select the copy to clipboard button in the upper right:

Copy plot button

Web extension

The following features were ported to the web version of the Jupyter extension:

  • Plot viewer
  • Dataframe viewer

If you’d like to experiment with the functionality, launch Jupyter from your local machine with:

jupyter notebook --no-browser --NotebookApp.allow_origin_pat=https://.*\.vscode-cdn\.net

And then connect to it using the command Jupyter: Specify Jupyter server for connections from within vscode.dev.

For more information (and to comment), see this discussion item.

Interactive Window restore

Interactive Window sessions can now be restored across VS Code window reloads by turning on the setting interactiveWindow.restore.

Interactive Window restore

Limitations: Raw kernel states are not persistent across window reloads (see more information in this discussion item). If you are using a remote Jupyter server, the Interactive Window will be connected to previous kernel sessions on reloads.

Loading environment variables from .env files

A number of fixes have been made to loading environment variables from .env files, including detecting changes to the .env files. Python kernels will now load environment variables from the file defined in the setting python.envFile.

GitHub Pull Requests and Issues

There has been more progress on the GitHub Pull Requests and Issues extension, which allows you to work on, create, and manage pull requests and issues. Highlights of this release include:

  • There is a new button to only show the changes to a pull request since the viewer’s last review.
  • The new Commit & Create Pull Request action in the Source Control view lets you do a Git commit and go to the Create PR view in one step.
  • The githubPullRequests.pullRequestDescription setting can be used to configure the source text for PR descriptions.

Check out the changelog for the 0.48.0 release of the extension to see the other highlights.

Remote Development

Work continues on the Remote Development extensions, which allow you to use a container, remote machine, or the Windows Subsystem for Linux (WSL) as a full-featured development environment.

You can learn about new extension features and bug fixes in the Remote Development release notes.

Preview features

Editor sticky scroll

It is now possible to display UI showing which scope the user is in during scrolling. The “sticky scroll” UI will show which class/interface/namespace/function/method/constructor the top of the editor is in, helping you know the location within a document. Enable sticky scroll with the editor.experimental.stickyScroll.enabled setting.

"Sticky scroll" showing the source code scope for a TypeScript file

TypeScript 4.8 support

This update includes support for the upcoming TypeScript 4.8 release. See the TypeScript 4.8 iteration plan for more details on what the TypeScript team is currently working on.

To start using the TypeScript 4.8 nightly builds, install the TypeScript Nightly extension.

Settings Profiles

We have been working the last couple of months to support Settings Profiles in VS Code, which is one of the most popular asks from the community. This feature is available for preview in the Insiders release via workbench.experimental.settingsProfiles.enabled setting. Try it out and let us know your feedback by creating issues in the VS Code repository or commenting in issue #116740.

In this milestone, we also added support for Settings Profiles in VS Code for the Web. You can try it out using insiders.vscode.dev and the same workbench.experimental.settingsProfiles.enabled setting.

Settings Profiles demo, showing the theme, zoom level, and Activity bar position changing as the profile is switched

Theme: Light Pink

Task reconnection

On window reload, watch tasks can be reconnected to by enabling task.experimental.reconnection, which results in a faster return to work following an extension change or VS Code version update.

Code Actions

We have been working to provide a better experience with Code Actions in VS Code. Code Actions include Refactorings, Source Actions, and Quick Fixes.

The new experimental Code Actions control can be opened from the context menu by selecting Refactor or Source Action, from a lighbulb, or via a Quick Fix. Try it out via the editor.experimental.useCustomCodeActionMenu setting. Let us know about any feedback by creating issues in the VS Code repository or commenting in issue #152913.

Refactoring previews for Code Actions are also accessible from the new Code Action control. Hover over enabled items to view how to preview. Custom keybindings are supported for selection of Code Actions, as well as to preview the selection.

Code Action control demo, showing control access from the context menu, a lightbulb, and Quick Fix.

In this milestone, we also added support for custom keybindings for Code Actions, which includes Quick Fix (⌘. (Windows, Linux Ctrl+.)). You can try it out by adding the following snippet with your desired keyboard shortcuts to keybindings.json.

[
  {
    "key": "ctrl+k",
    "when": "codeActionMenuVisible",
    "command": "focusPreviousCodeAction"
  },
  {
    "key": "ctrl+j",
    "when": "codeActionMenuVisible",
    "command": "focusNextCodeAction"
  }
]

Edit Sessions across VS Code for the Web and desktop

Work continues on Edit Sessions, which let you bring your uncommitted changes along when you continue working on a repository across VS Code for the Web or desktop. Some highlights include:

  • You can now delete all stored Edit Sessions from the cloud when turning off Edit Sessions functionality.
  • Signing in with Microsoft authentication is now supported.
  • If you are having trouble locating your Edit Sessions, you can view all your Edit Sessions with the Edit Sessions: Show Edit Sessions command.

To try out Edit Sessions, set workbench.experimental.editSessions.enabled in your settings and use the Edit Sessions: Store Current Edit Session command, signing in with GitHub or Microsoft authentication when prompted. Then use the Edit Sessions: Resume Latest Edit Session command in a repository on another machine or VS Code instance to restore the working contents of all modified files to your workspace. You can sign out of Edit Sessions at any time using the Edit Sessions: Sign Out command.

As we continue to iterate on the Edit Sessions experience, try it out and share your feedback with us via a comment in issue #141293.

Extension Authoring

‘not in’ operator for ‘when’ clauses

There is an operator that already exists for when clauses, in, which allows for dynamic lookup of a context key’s value within another context key with an array or object-type value. We’ve added a new operator not in, which negates this. See the when clause contexts documentation for details.

htmlLanguageParticipants contribution point

A new contribution point htmlLanguageParticipants allows HTML-like languages to declare that they want to inherit all HTML language server features such as code completions, hovers, and outline. This is useful for programming language extensions that don’t want to implement a full language server.

An example is the built-in handlebars extension that now adds itself to the htmlLanguageParticipants in its package.json:

"contributes": {
  "htmlLanguageParticipants": [
     {
       "languageId": "handlebars"
      }
    ]
}

The Quarkus extension has already adopted the contribution point. It enriches the HTML features with additional proposals for the embedded Qute HTML template language:

Qute HTML participant

Drop into editor API

The text editor drop API lets extensions handle dropping of files or other content into text editors. These drop events can come from within VS Code, such as dragging a file from VS Code’s Explorer into a text editor, or can be generated by dropping a file from your operating system into VS Code.

Using the drop into editor API to insert an image in Markdown by dragging it from VS Code's Explorer

To drop a file into an editor, users can hold down kbsytyle(Shift) while dragging and then drop the file to a specific location in the file. At this point, your extension can choose what to do with the dropped data.

Check out the drop into editor extension sample for a simple example of this API in action.

Proposed APIs

Every milestone comes with new proposed APIs and extension authors can try them out. As always, we want your feedback. Here are the steps to try out a proposed API:

  1. Find a proposal that you want to try and add its name to package.json#enabledApiProposals.
  2. Use the latest vscode-dts and run vscode-dts dev. It will download the corresponding d.ts files into your workspace.
  3. You can now program against the proposal.

You cannot publish an extension that uses a proposed API. There may be breaking changes in the next release and we never want to break existing extensions.

The new webview context menu proposal makes it easy for advanced webviews to customize the context menus that shows when a user right-clicks inside a webview. This new contribution point uses VS Code’s normal context menus, so custom menus fit right in with the rest of the editor. Webviews can also show custom context menus for different sections of the webview.

To try out this new API, you need to enable the contribWebviewContext proposal.

"enabledApiProposals": [
  "contribWebviewContext"
]

To add a new context menu item to your webview, add a new entry in menus under the new webview/context section. Each contribution takes a command (which is also where the title comes from) and a when clause. The when clause should include webview == 'YOUR_WEBVIEW_VIEW_TYPE' to make sure the context menus only apply to your extension’s webviews:

"contributes": {
  "menus": {
    "webview/context": [
      {
        "command": "catCoding.yarn",
        "when": "webview == 'catCoding'"
      },
      {
        "command": "catCoding.insertLion",
        "when": "webview == 'catCoding' && webviewSection == 'editor'"
      }
    ]
  },
  "commands": [
    {
      "command": "catCoding.yarn",
      "title": "Yarn 🧶",
      "category": "Cat Coding"
    },
    {
      "command": "catCoding.insertLion",
      "title": "Insert 🦁",
      "category": "Cat Coding"
    },
    ...
  ]
}

Inside of the webview, you can also set the contexts for specific areas of the HTML using the data-vscode-context data attribute (or in JavaScript with dataset.vscodeContext). The data-vscode-context value is a JSON object that specifies the contexts to set when the user right-clicks on the element. The final context is determined by going from the document root to the element that was clicked.

Consider this HTML for example:

<div class="main" data-vscode-context='{"webviewSection": "main", "mouseCount": 4}'>
  <h1>Cat Coding</h1>

  <textarea data-vscode-context='{"webviewSection": "editor", "preventDefaultContextMenuItems": true}'></textarea>
</div>

If the users right-clicks on the textarea, the following contexts will be set:

  • webviewSection == 'editor' — This overrides webviewSection from the parent element.
  • mouseCount == 4 — This is inherited from the parent element.
  • preventDefaultContextMenuItems == true — This is a special context that hides the copy and paste entries that VS Code normally adds to webview context menus.

If the user right-clicks inside of the <textarea>, they will see:

Custom context menus showing in a webview

View size

The view size proposal lets extensions provide weights to the views they contribute:

"contributes": {
    "views": {
        "github-pull-request": [
            {
                "id": "github:createPullRequest",
                "type": "webview",
                "name": "Create Pull Request",
                "size": 2
            },
            {
                "id": "github:compareChanges",
                "name": "Compare Changes",
                "size": 1
            }
        ]
    }
}

The size works similarly to the CSS property flex-grow. In the above example, the view with "size": 2 will be twice the size of the view with "size": 1. The size property is only respected if the view container is contributed by the same extension.

Extensible HTML notebook renderer

Our built-in notebook renderers now expose an experimental API that lets extensions customize rendering of HTML content. This API currently exposes a single hook, postRender, which is invoked after the initial rendering of the HTML content.

To try using this experimental API, your extension needs to extend the vscode.builtin-renderer API.

"contributes": {
  "notebookRenderer": [
    {
      "id": "vscode-samples.my-custom-html-extension",
      "displayName": "My custom html renderer extension",
      "entrypoint": {
        "extends": "vscode.builtin-renderer",
        "path": "./out/main.js"
      }
    }
  ]
}

Your renderer can then register a rendering hook on the vscode-builtin-renderer:

import type { RendererContext } from 'vscode-notebook-renderer';

export async function activate(ctx: RendererContext<void>) {
  const htmlRenderer = await ctx.getRenderer('vscode.builtin-renderer');
  if (!htmlRenderer) {
      throw new Error(`Could not load 'vscode.builtin-renderer'`);
  }

  htmlRenderer.experimental_registerHtmlRenderingHook({
    // Invoked after the HTML content for `outputItem` has been rendered to `element`
    postRender(outputItem: OutputItem, element: HTMLElement): HTMLElement | undefined {
      // You can either modify `element` or return a replacement element
    }
  });
}

Test out this new API and let us know what you think!

Debug Adapter Protocol

argsCanBeInterpretedByShell for RunInTerminalRequest

The RunInTerminalRequest supports a new property, argsCanBeInterpretedByShell, which tells the client whether special shell characters in the command args should be left unescaped. This is to enable users to write launch configs that will start in a terminal, and include characters that should be interpreted by the shell.

Engineering

Progress for Electron sandbox support

This milestone we made substantial progress toward enabling Electron’s sandbox by default. We plan on enabling sandbox in August for Insiders and eventually make it the default in Stable VS Code.

For the curious out there, configuring "window.experimental.useSandbox": true in settings will enable sandbox mode. Hopefully you should not notice anything changing, but if you find issues, please report them back to us.

Markdown language server

This iteration, we extracted much of VS Code’s tooling for writing Markdown into a library and language server. This includes our tooling for path completions, document outlines, and diagnostics.

VS Code’s built-in Markdown extension has already switched to using this new language server, although hopefully you will not notice any difference in behavior. This switch should help improve performance though, as it moves the Markdown tooling to its own process. Moving to a language server also helped us improve the performance of our experimental Markdown link diagnostics.

Our hope is that other tools and editors will also be able to benefit from these new packages and even contribute back to them. Together we can build better Markdown tooling for everyone! If you are interested, check out the relevant projects:

Debian package dependencies

Debian package dependencies are now generated by a script rather than hard-coded. This closes an issue filed back in 2016 where missing dependencies would cause the program to crash at runtime on some machines.

Documentation and extensions

Development container CLI

The dev container command-line interface (CLI) topic was updated for the newest version of the CLI. The dev container CLI lets you build and run dev containers and is an open-source reference implementation of the Development Containers Specification

Banner from the Development Containers Specification website

Azure Developer CLI (azd)

The Azure Developer CLI and its complementary VS Code extension are now in public preview. The Azure Developer CLI (azd) accelerates the time it takes you to get from your local development environment to Azure by providing developer-friendly commands that map to key stages in your workflow: code, build, deploy, monitor, repeat.

Azure Developer CLI extension

The Azure Developer CLI uses extensible templates that include everything you need to get an application up and running in Azure. The templates include best practices, application code and reusable infrastructure as code assets. More than that, they cover end-to-end scenarios that go far past “Hello World!”.

With the Azure Developer CLI, you can initialize, provision, and deploy an application, or better yet, use 'azd up' to do so in one step! For a list of supported azd commands, see the Developer CLI reference.

Thank you

Last but certainly not least, a big Thank You to the contributors of VS Code.

Issue tracking

Contributions to our issue tracking:

Pull requests

Contributions to vscode:

Contributions to vscode-generator-code:

Contributions to vscode-js-debug:

Contributions to vscode-json-languageservice:

Contributions to monaco-editor:

Featured Images now in Gmail Promotions Tab Bundles!


  • Gmail’s recent broad rollout of promotions tab bundles will reward good, engaging emails with more opportunities to solidify that engagement.
  • FeedBlitz is helping you make the most of that opportunity, out of the box, today, by making every email we send bundle-ready with a featured image.

Here’s how this gives you competitive advantage: The vast, vast majority of emails in the promotions tab are not bundle-ready, so with FeedBlitz your emails are suddenly way ahead of the competition.

This matters because gmail owns the bulk of consumer emails right now, and so being able to stand out within gmail itself is a huge competitive advantage for mailers.

To help you do that, FeedBlitz will find the featured image from your blog, newsletter or email, and ensure that if your email appears in a gmail app’s promotions tab bundle, your featured image will appear. This makes your email stand out from the clutter, encouraging opens and downstream engagement.

Since a picture says a thousand words, here’s an example from a client:

480600

See how Lisa’s email stands out? That’s because (a) it’s been bundled on the gmail promotions tab, and (b) FeedBlitz built the email to be bundle-ready, so that an engaging image pops out.

That’s neat and easy – and, as of today, zero extra effort for FeedBlitz clients. If you send an email using FeedBlitz, it just works.

Depending on what gmail knows about the subscriber, it may group an email at the top of the promotions tab as part of a “bundle” – the recipient sees it highlighted as “Top Picks,” “Top Promotions” or similar text (the copy varies depending on what gmail thinks the email is about).

If an email ends up at the top of a bundle, it is typically followed by maybe one more bundled email, and then by a couple of google ads (aha!, says my inner cynic, way to emphasize those, Google).

Still, a bundled email appears at the top of the promotions tab even if other emails arrive after it, so it’s a way to maintain visibility and stickiness for your messaging.

Bundling, though, is neither guaranteed nor predictable — sometimes we’ve seen an email arrive and be positioned normally, then refreshing the promotions tab (by dragging down and releasing it) caused the email to be bundled. (I personally would like the app to behave consistently and do that without mystery manual intervention.)

There aren’t any guarantees that your email will be bundled, and it clearly varies based on the individual recipient. (Also be aware that the Inbox tab doesn’t bundle – it’s only the promotions tab, and only on gmail’s apps).

Nonetheless, this is an important development that gmail is rolling out, so I’m going to explore it a little further so you can work on taking advantage of it.

Back in the day, the email marketing community was very worried about bulk email and newsletters being siphoned off by gmail to the promotions tab. The fear was that open rates would suffer, with consequent drops in open rates and revenues. That didn’t really happen, and the promotions tab is just a handy pre-built folder to find non-personal mailings.

When your email gets bundled, however, things get a LOT better for an email marketer.

  • Your email gets pinned to the top of the tab and becomes temporarily sticky.
  • You can stand out by having images and deals highlighted without the email being opened.

Both of these encourage opens and engagement, and these are good things. This is an interesting, engagement-based feature, and although the extra image and deal highlighting is currently limited to gmail’s apps (not, as far as I can tell, their web browser interfaces), it is an opportunity for every business, large or small, to strive to make their email marketing better.

Being bundled – and making the most of that when it happens – goes further, though. It helps establish a virtuous cycle: the more bundled an email gets, the more engagement it will garner, making it more likely that future emails will also be bundled. It’s an accelerant for good email marketing and organizations that do email well. To the winners, the breaks, as it were.

[There is a catch to the images that show with a bundled email, however, and that is that if a bundle shows your email’s bundle-ready image, that image is cropped and letter boxed – only the middle sliver is shown.]

This leads to two questions, one specific to FeedBlitz, and one a more general email marketing question:

  • How does my email get to be bundled in the promotions tab?
  • How does FeedBlitz help?

Let’s hop to it.

It’s a gmail-specific algorithm, and clearly their goal is to only bundle or highlight relevant emails that have a history of positive engagement. Bundling is also personalized, and the app’s bundling decision will vary by recipient. In other words, your email may be bundled for some readers, but not for others. Clearly the way to increase the likelihood of your email getting to the top of the bundling heap is to double down on engagement and best practices, so that not only is your reputation as a sender / brand excellent, but also your engagement with readers is consistently positive.

How?

  • Ensure your open rates are good by writing compelling subject lines and making the most of pre-header / preview text.
  • Create good mixed content (text, headlines and imagery) to encourage time within the email.
  • Have compelling and relevant calls to actions to click through from the email to relevant content, offer or other call to action, including secondary ones such as “join my patreon” as well as “20% off” (or whatever!).
  • Keep your list clean by removing non-engaged subscribers, which will help move your open rates up.
  • Have a featured-image near the top of the email that is at least 322 x 82 (even if it is rendered smaller on your email).

As of today, if your email contains a meaningful or explicitly featured image, FeedBlitz will do the work to ensure that if gmail bundles your email in an app, that featured image will be displayed with it.

It just works.

This is true for traditional newsletters, RSS-powered blog subscriptions, funnels and transactional emails we send for you. In other words, as a FeedBlitz client, you do exactly nothing more than what you’re doing right now, and it just works. Automatically! Our featured image algorithm is part of our service, and has been around for years, restructuring blog-based emails from “here’s a blog post in your email” to “here’s an interesting and dynamically restructured update from the blog” – this featured image detection algorithm is how we create post thumbnails or hero images on the fly.

For RSS powered mailings, that’s a good thing; the whole point of an RSS-driven email subscription service is to set and forget, after all. So RSS-powered campaigns are all going to be promotions tab bundle ready, and neither the campaign nor the mailing template needs to be changed.

For emails and newsletters that are built using our visual drag and drop editor, a.k.a. the Visual Mailing Editor (VME), the test email dialog now shows a preview of the featured image FeedBlitz found, and how it will (probably) appear if it’s bundled in the gmail app, like this:

If, however, there are other candidate featured images in the mailing, the dialog lets you cycle through them using the arrows, so you can pick the one you like best. The preview we show is a very good facsimile for what gmail shows, but it isn’t a guarantee – the developers at gmail like to mix things up and keep us email service providers (ESPs) on our toes.

When you’re building your email in the FeedBlitz VME, you can pick the image you want to highlight and set it to be featured as part of the image block’s properties, pre-empting the test email step.

There’s a certain amount of secret sauce here, but basically we look for large images that stand out. Basically, our featured image algorithm is emulating what a human eye would immediately be drawn to when your email is first opened, and promoting that image up into the gmail bundle.

You can influence our algorithm, for both traditional and RSS-powered mailings, by attaching a CSS class containing the word “featured” to the HTML image tag you want to emphasize (if you don’t know what that means, that’s OK, remember that the algorithm works automatically, and is very, very good at what it does without any human guidance).

Once FeedBlitz has found a set of candidate images that could be featured, it take the first one with the “featured” CSS class tag, or otherwise the first one it finds. (A postscript here: If the algorithm is not consistently finding the image you want it to, please drop a line to support for advice).

Samsung projects 15-fold surge in second-quarter as chip prices rise


hbm3e-12h-1.png

Samsung forecast a surge in its second-quarter profit as the global memory chip market continues its rebound fueled by the AI boom.

The South Korean tech giant said on Friday in its preliminary earnings guidance that it estimates an operating income of 10.4 trillion won in the quarter, an increase of 1,452% from a year ago. Revenue also jumped 23.31% over the same period to 74 trillion won.

Also: The Samsung Galaxy Tab S9 FE is only $379 for Amazon’s 4th of July sale, its lowest price yet

The profit surge continues the turnaround of Samsung’s chip division that started the previous quarter, in which it saw operating income jump 900% from a year ago. The chip division’s return to profitability after five previous quarters in the red directly contributed to that jump.

In the second quarter, the company’s chip division is expected to have done the heavy lifting, contributing approximately half or more of the operating income, according to South Korean analysts.

Also: What to expect from Samsung Unpacked Summer 2024: Galaxy Z Fold 6, Watch 7, Smart Ring, more

DRAM and NAND prices have been on a steady climb since late last year. DRAMs, especially high-bandwidth memory (HBM), used in data centers are especially in high demand thanks to AI.

Meanwhile, Samsung’s smartphone business unit is expected to have contributed approximately 2 trillion won out of the operating income total. The company will announce its full earnings report at the end of the month.

The strong second quarter performance, its best in two years, will no doubt raise morale in Samsung after a dismal 2023. And it is only going to get better.

Demand for HBM is expected to be strong through the year and the company has a deal with Nvidia on the horizon. Samsung has said it is planning to start mass production of HBM3E within the third quarter. In addition to this continuing rise in chip demand, Samsung is also set to unveil its new foldables next week, which will give its earnings a further boost.



CLeM Backstage Stories: How our Little Servant Came to Be


Quite some time ago, just before we entered the new millennium, an alternative metal band released an album that, years later, would plant a seed inside Mariona’s head. Mariona is Mango Protocol’s art director, the band was KoRn and the album “Issues”. That album featured a rag doll on its cover art and the music video for one of the singles featured the band performing amidst roaches, a spider and a fly. Later on, a KoRn music video compilation DVD would feature a rudimentary escape room game taking place inside an abandoned asylum.

All these ideas lived in the wild for some time, until 2006 when Mariona started working on the story for a short stop motion movie and found inspiration from one of the bands she was obsessed with at that time. Thus, influenced by KoRn’s “Issues” imagery, the short movie script became a pretty abstract story about the circle of life, revolving around a captive doll chasing bugs while following a little girl’s mysterious instructions.

Clem snippets

After finishing the short movie production, its storyboard remained in the shadows waiting for its time to shine again. And this time came in 2018, when Mariona, Javi (Mango Protocol’s narrative director) and I, decided to rescue it and adapt its core concept in what would be the cornerstone on which CLeM, the fourth installment of the Psychotic Adventures game saga, was built.

Javi took on the development of a cute and dark story. His main goal was to embed the original script with themes that resonated better with some very personal experiences in Mariona’s life and, at the same time, make it suitable to be experienced as a fully fledged narrative-based looping puzzle game.

At the same time, Jordi started navigating all the threads in the story to come up with puzzles that represented both a fun challenge to the player and also mirrored the feelings that the main character was discovering as the interactive experience developed.

Meanwhile, in the art direction department, Mariona was about to unveil the appearance of said character. It was a new and improved version of the character from the short movie storyboard which was, in turn, Mariona’s interpretation of the doll in the cover of KoRn’s “Issues”. We all instantly fell in love with “the servant”.

Clem concept art

This is one of the most memorable stories behind the development of CLeM and we hope you enjoyed it. Now it’s time for you to play the game and become a part of this amazing puzzlevania. In it, you’ll control a ragdoll that has been brought to life in a dark basement. A voice inside your head will ask you for beauty and your only clue will be a notebook full of entries on alchemy and arthropods and their attributes. Are you ready?

CLeM, coming to Xbox Series X|S and Xbox One on July 17, is an acclaimed puzzle adventure with room escape vibes and a dark story to unveil. Pre-order the game now and get ready to immerse yourself in its creepy and emotional world.

Xbox Live

CLeM

Mango Protocol





$15.99

$14.39


CLeM is a narrative-driven puzzle adventure game with a dark twist. Wake up in a world where puzzles intertwine with exploration, weaving a unique narrative rooted in alchemy. A voice awakens you. It gives you purpose. To guide you, you find a notebook with mysterious entries and a house to explore.

EXPERIENCE A DARK ADVENTURE FULL OF MYSTERY
You awaken in a cold, dimly lit room, your senses slowly adjusting to the surroundings that, oddly, feel familiar. A strange sensation lingers in you, reminding you that something is not quite right. As you find your bearings, your attention is drawn to a peculiar item on the ground. A notebook labeled “CLeM” lies before you. As you delve into its pages, covered with intricate sketches of insects accompanied by vague symbols, you find a note containing a cryptic message: “Bring me BEAUTY.” Lost in deciphering the contents, a voice interrupts your focus.

SOLVE PUZZLES AND FIND YOUR WAY
Puzzles intertwine with exploration, weaving a unique narrative experience we call “puzzlevania” with a shadowy story to unravel and countless challenges to overcome.

CRAFT ENCHANTED TOYS AND UNCOVER SECRETS
Craft magic toys to unveil hidden secrets, access unreachable spots, and reclaim items from the past as you uncover new revelations in familiar spaces.

DISCOVER A CUTE AND DARK WORLD
Investigate a seemingly desolate house accompanied only by an obscure voice and a notebook full of annotations and drawings on alchemy, insects, and other creepy crawlies.

EMBRACE YOUR DESTINY
Choose your fate in this dark story of manipulation, pride, forgiveness, and redemption.

python – Debugging Cythonized code using Visual Studio 2022


I am trying to debug a Cythonized Python project using Visual Studio 2022 with the following setup.py file:

extensions = [
    Extension("ticker", ["ticker.py"],
          extra_compile_args=["-Ox", "-Zi"],
          extra_link_args=["-debug:full"]),
    Extension("ticker_dep", ["ticker_dep.py"],
          extra_compile_args=["-Ox", "-Zi"],
          extra_link_args=["-debug:full"])
]

setup(
    ext_modules=cythonize(extensions, emit_linenums=True)
)

using the build command:

python setup.py build_ext –build-lib ./build

when stepping in the debugged code, I get the following error:

Message=ForwardRef._evaluate() missing 1 required keyword-only argument: ‘recursive_guard’
Source=C:\RTFilingsNLPC\businesslib\build\fragment_search.py
StackTrace:
File “C:\RTFilingsNLPC\businesslib\build\fragment_search.py”, line 7, in (Current frame)
from spacy.tokens import Token
File “C:\RTFilingsNLPC\businesslib\build\sc_13d.py”, line 6, in
from fragment_search import FragmentSearch
File “C:\RTFilingsNLPC\businesslib\build\rtf_bootstrap.py”, line 10, in
from sc_13d import Sc13dParser
TypeError: ForwardRef._evaluate() missing 1 required keyword-only argument: ‘recursive_guard’

Running this code as pure python works correctly.

Can somebody please help with this?

Thanks,
Ronny

6 Options For Fast Typers


Typing jobs from home: 7 ways to earn money as a fast typist.

Looking for typing jobs from home? You’re not alone. Typing-based remote jobs are some of the most popular around. In fact, typing-heavy jobs were what got me into remote work almost a decade ago. 

I was always a fast typist. When I was eight, we got a brand new Compaq computer. I was thrilled.

I quickly expressed interest in learning to type. My ever-supportive mom bought me computer software called Mavis Beacon Teaches Typing. I loved it. I honed my typing skills and always tried to get faster.

Eventually, I carried my typing skills through high school and even used them to do data entry work for a medical office during the afternoons and summer. 

It was only natural that when I decided to kick my cubicle to the curb that I would try to capitalize on my fast fingers. 

What I quickly learned was that, if you’re a fast and accurate typist, you can definitely put your fingers to work.

Typing Jobs From Home: Options Available 

Almost all remote jobs require typing skills. Since you’re not in an office, most of your communication will be done in writing. You’ll send tons of emails, instant messages, and do a lot of typing to communicate. 

But, there are those remote career paths that require a lot more typing than the average position. So, if you’ve always been a fast typist you should definitely look into these typing jobs from home. 

1. Bookkeeper 

A bookkeeper keeps daily records of money coming in and money going out. Unlike an accountant, a bookkeeper doesn’t need accreditation or a degree. Instead, they need to be accurate typists as they work to keep true financial records. 

Bookkeepers can work for a single company or outsource their services to different clients. A bookkeeping service is a great option for fast typists since the quicker you work the more you can earn. In fact, Entrepreneur named bookkeeping as one of the most profitable businesses. 

So, if you’re a fast and accurate typer, you can earn a living from home as a bookkeeper

Train online to become a virtual bookkeeper so you can work from home. This course will show you how.
3 Free CLASSES!

2. Medical Billing and Coding 

As far as typing jobs from home, medical billing and coding is incredibly in demand. A recent CNBC report found there are far more medical billing and coding job openings than professionals to fill them. 

Needless to say, you can definitely earn a living from home typing as a medical billing and coding pro. But, keep in mind, you need some training and certification to get started. 

Medical billing and coding professionals assign specific codes to patients’ charts. These codes are used by insurance companies to issue payment for procedures and services. Because these codes become a permanent part of a patient’s medical records, certification is required as an entry level candidate. 

Fortunately, you can complete medical billing and coding training online (and in less than a year). Career Step has a comprehensive medical billing and coding program that partners with companies that hire remote workers. So, in as little as a year, you can land one of many typings jobs from home as a medical billing and coding pro. 

How to become a certified medical coding pro in less than a year.

3. Transcription 

There are tons of opportunities to work from home in transcription. True story, my very first remote job was as a legal typist. I listened to recorded depositions and phone interviews for insurance companies. Then, I transcribed them word for word. These transcripts were typically used in lawsuits where insurance claims were involved — think car accidents, theft, fire, vandalism, etc. 

Needless to say, it was very interesting! And, it was a remote career path that perfectly played into my typing skills.

But, legal transcribing is just one of the typing jobs from home in transcription. (If you’re seriously interested in legal typing jobs, though, I highly recommend you take this free legal transcription course first!) You can also find work as a general typist and medical typist.

General Transcription 

A general transcriptionist usually transcribes audio ranging from focus groups to financial calls and even sermons or lectures. Really, there are all types of professionals and businesses that use general typists to turn recordings into written documents.

General transcriptionists typically don’t have to transcribe verbatim. Instead, they produce cleaned up transcripts that don’t have “ums” and “uhs,” false starts and stutters from speakers. 

To be a general transcriptionist, you don’t need special training. In fact, many companies will take a chance on beginners. However, to make the most of your time, you need to be a fast and accurate typist. Plus, you have to get used to typing while listening to audio and using a foot pedal

I highly recommend a free transcription course before you jump into transcribing head first. Doing so will give you a good overview of transcribing for a living and help you decide if it’s right for you. Did I mention it’s free?

Medical Transcription 

Medical typing jobs from home are some of the most lucrative. However, you need training to be considered. 

As a medical transcriptionist, you listen to doctor dictation and transcribe what is being said. Often, there are specific medical and anatomy terms that would be difficult to understand without proper training. 

The good news is, medical transcription and editing training can be completed online and in less than a year through Career Step. Upon graduation, you’ll be ready to take on work as a home-based typist in the medical field. 

Train online to become a medical transcriptionist and editor

4. Data Entry 

As a Certified Professional Career Coach (CPCC) specializing in remote work, I get a TON of questions about data entry work. Unfortunately, there just aren’t enough real openings to keep up with the demand.

Often, there are tons of jobs posted online looking for home-based data entry clerks. But, more often than not, these postings are scams. On occasion, there are legit data entry positions posted. However, these often pay very little — I’m talking pennies for hundreds of characters typed. 

For example, I signed up for data entry work at Virtual Bee (it’s now called SmartCrowd). Again, I was always looking for typing jobs from home that would let me earn money just for being a quick typist and it seemed like a good option. As it turns out, it wasn’t. I threw in the towel after a week of work and only earning $7.00. Yep, you read that right — a measly $7.00. 

If you’re truly interested in data entry work from home, you can check out different platforms and marketplaces that frequently post these type of jobs. Some popular options include Amazon Mechanical Turk, SigTrack, Fancy Hands, and Upwork

Keep in mind, the pay rate will vary quite a bit. And like the other typing jobs from home listed, the faster you can type, the more you’ll earn! 

5. Captioning 

As a captioner, you’ll sync captions to video so they show up on screen at the right time. To do this, you have to accurately type what is being said and time it just so. 

Captioners can find work captioning pre-recorded video or live broadcasts. Of course, when it comes to live broadcasts, you’ll need to type quickly enough to keep up with speech in real time, as it happens. This requires quite a bit of skill and extremely fast fingers

If you’re new to captioning, Rev is a good place to start. While the pay is on the lower side, you can gain experience as a beginner. From there, you can go onto higher-paid positions. 

6. Email & Chat Agents 

Any non-phone jobs are always popular among remote job seekers. That’s why email and chat agent positions are some of the most coveted positions around! Fortunately, there are a number of companies that hire email reps and chat agents to support customers. 

Typically, virtual reps will primarily handle customer inquiries via email and chat. However, there may be times when you have to take calls, so keep that in mind. 

In addition to being a fast typist, you also must have a strong grasp of grammar. You will always need to respond to customers in complete, error-free sentences. 

Apple is a well-known company that hires chat agents, but there are some less-common companies that hire email representatives. If you’re a fast typist, it’s a good idea to check them all out! 

7. Virtual Assistant

Finally, don’t forget about virtual assistant work as a source of typing jobs from home. A virtual assistant tackles a variety of tasks depending on skills and clients. For example, VAs can do graphic design, social media, email management, marketing, ecommerce, and so much more!

You can work for one of the many virtual assistant companies or start your own business as a virtual assistant. In fact, grab this FREE Guide to 275+ In-Demand VA Services for inspiration.

Typing Jobs From Home 

Think you have what it takes to successfully perform typing jobs from home? Keep in mind, you really do need to be fast and accurate to make these jobs worth your time. 

Some companies will only require a typing speed of 30 words per minute or greater. But, for transcription jobs or medical billing and coding gigs, a minimum 70 words per minute is pretty standard. 

Before getting started, test your typing speed. If you struggle to maintain a high word per minute rate or your accuracy is lacking, you can always brush up on your skills.

There are free sites you can use, like How To Type, to refine your abilities. Before you know it, you’ll be ready to tackle all the typing jobs from home. 

Happily, 

Ashlee 

P.S. This post contains affiliate links. Check out my disclosure statement to learn more.

Best Buy is selling this Lenovo laptop for just $150 today


Lenovo

The back-to-school season is just a couple of weeks away, and we’ll have our sights set on all kinds of Best Buy deals as they roll in. For now though, there are still plenty of great laptop deals to sort through, and one of them is actually a Best Buy exclusive: While the sale lasts, you’ll be able to take home the Lenovo 14-inch Ideapad 1 for only $150. That’s $100 off its normal selling price. 

Why you should buy the Lenovo Ideapad 1

This time of year is one of the best times to invest in a new laptop. Most companies know that student laptop deals are going to be at the top of many shoppers’ back-to-school essentials, and the Lenovo Ideapad 1 is an ideal PC for word processing, browsing the web, and taking an online course or two. The 14-inch screen uses Lenovo’s SuperBright technology in addition to a matte coating to preserve colors and contrast in the movies, shows, and games you decide to play on the Ideapad 1. And while the pixel count only tops out at 1366 x 768, that’s still an HD display. 

As far as processing power, the Ideapad 1 is equipped with an Intel Celeron N4020 CPU with Intel UHD Graphics. These core peripherals run off 4GB of RAM, with up to 128GB of internal storage available. The latter should be enough bytes to store word docs, PDFs, and other important files, though you may want to invest in an external drive to add additional storage. 

On a full charge, you should get about 10 hours of battery life. That should be enough life for a full day of classes, but we do recommend bringing your charger with you just in case. Last but not least is ports, and the Ideapad 1 contains several USB connections, HDMI, an SD card reader, and 3.5mm auxiliary for hooking up headphones.

Lenovo laptop deals are just about everywhere you look, but this is definitely one of the best pre-back-to-school offers we’ve seen. For a limited time, save $100 when you purchase the Lenovo 14-inch Ideapad 1 from Best Buy!