
Error message
Warning: Undefined array key "attr_width" in Drupal\jango_shortcodes\Plugin\Shortcode\ImageShortcode->process() (line 53 of modules/custom/jango_shortcodes/src/Plugin/Shortcode/ImageShortcode.php).
Drupal\jango_shortcodes\Plugin\Shortcode\ImageShortcode->process() (Line: 426) Drupal\shortcode\ShortcodeService->processTag() (Line: 306) Drupal\shortcode\ShortcodeService->process() (Line: 117) Drupal\shortcode\Plugin\Filter\Shortcode->process() (Line: 123) Drupal\filter\Element\ProcessedText::preRenderText() call_user_func_array() (Line: 113) Drupal\Core\Render\Renderer->doTrustedCallback() (Line: 870) Drupal\Core\Render\Renderer->doCallback() (Line: 432) Drupal\Core\Render\Renderer->doRender() (Line: 248) Drupal\Core\Render\Renderer->render() (Line: 484) Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 89) __TwigTemplate_7c8bccb4697c8c8d6aa0c086a4b7f128->doDisplay() (Line: 388) Twig\Template->yield() (Line: 344) Twig\Template->display() (Line: 359) Twig\Template->render() (Line: 51) Twig\TemplateWrapper->render() (Line: 33) twig_render_template() (Line: 348) Drupal\Core\Theme\ThemeManager->render() (Line: 491) Drupal\Core\Render\Renderer->doRender() (Line: 504) Drupal\Core\Render\Renderer->doRender() (Line: 248) Drupal\Core\Render\Renderer->render() (Line: 484) Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 86) __TwigTemplate_b9c67e298f54c59dc56be7ef86340ed3->block_content() (Line: 432) Twig\Template->yieldBlock() (Line: 69) __TwigTemplate_b9c67e298f54c59dc56be7ef86340ed3->doDisplay() (Line: 388) Twig\Template->yield() (Line: 344) Twig\Template->display() (Line: 359) Twig\Template->render() (Line: 51) Twig\TemplateWrapper->render() (Line: 33) twig_render_template() (Line: 348) Drupal\Core\Theme\ThemeManager->render() (Line: 491) Drupal\Core\Render\Renderer->doRender() (Line: 248) Drupal\Core\Render\Renderer->render() (Line: 165) Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 638) Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 164) Drupal\Core\Render\Renderer->renderInIsolation() (Line: 191) Drupal\Core\Render\Renderer->doRenderPlaceholder() (Line: 723) Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() Fiber->start() (Line: 731) Drupal\Core\Render\Renderer->replacePlaceholders() (Line: 608) Drupal\Core\Render\Renderer->doRender() (Line: 248) Drupal\Core\Render\Renderer->render() (Line: 153) Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 638) Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 152) Drupal\Core\Render\Renderer->renderRoot() (Line: 288) Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders() (Line: 137) Drupal\Core\Render\HtmlResponseAttachmentsProcessor->processAttachments() (Line: 45) Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond() call_user_func() (Line: 111) Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() (Line: 214) Symfony\Component\HttpKernel\HttpKernel->filterResponse() (Line: 202) Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Line: 76) Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 53) Drupal\Core\StackMiddleware\Session->handle() (Line: 48) Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 28) Drupal\Core\StackMiddleware\ContentLength->handle() (Line: 201) Drupal\page_cache\StackMiddleware\PageCache->fetch() (Line: 138) Drupal\page_cache\StackMiddleware\PageCache->lookup() (Line: 87) Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 206) Drupal\cleantalk\EventSubscriber\BootSubscriber->handle() (Line: 48) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51) Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 36) Drupal\Core\StackMiddleware\AjaxPageState->handle() (Line: 51) Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 741) Drupal\Core\DrupalKernel->handle() (Line: 19)


If you're reading this article, there's a good chance you're one of two kinds of people. Either you're a newbie in the outsourcing world or you had plenty of sour offshoring experiences and checking whether nearshoring is a better path. Both nearshoring and offshoring have clear-cut advantages and disadvantages. The right choice depends on many factors we’ll guide you through in this article.

El Deber, one of Bolivia’s leading newspapers, recently featured our nearshoring strategy and new office launch in Santa Cruz. With our move into the Green Tower, we’re strengthening our presence at the heart of the country’s tech scene.

We’ve opened a new development center in Santa Cruz, Bolivia, expanding our footprint and reinforcing our commitment to nearshoring excellence. This new space helps us meet growing demand for top-tier software solutions while staying true to what matters most—working side by side with our teams to protect our culture and build secure, high-quality products.

At AssureSoft, we believe that when people feel supported, healthy, and truly included, everything else follows.