Generated by All in One SEO v4.9.5.1, this is an llms.txt file, used by LLMs to index the site. # Daniel Mendoza Software engineer | Problem Solver ## Sitemaps - [XML Sitemap](https://danielmlozano.dev/sitemap.xml): Contains all public & indexable URLs for this website. ## Entradas - [Blog](https://danielmlozano.dev/blog/) - [HackerRank Kangaroo Solution](https://danielmlozano.dev/hackerrank-kangaroo-solution/) - You are choreographing a circus show with various animals. For one act, you are given two kangaroos on a number line ready to jump in the positive direction (i.e, toward positive infinity).- The first kangaroo starts at location and moves at a rate of meters per jump.- The second kangaroo starts at location and moves at a rate - [HackerRank Sparse Arrays Solution](https://danielmlozano.dev/hackerrank-sparse-arrays-solution/) - There is a collection of input strings and a collection of query strings. For each query string, determine how many times it occurs in the list of input strings. Return an array of the results. Example strings = ['ab', 'ab', 'abc']queries = ['ab', 'abc', 'bc'] There are 2 instances of 'ab, 1 of 'abc' and 0 of 'bc'. For each query, - [LeetCode Group Anagrams Solution](https://danielmlozano.dev/leetcode-group-anagrams-solution/) - Knowing if two words are anagrams is easy. What about efficiently grouping them? Not as easy, but easy nonetheless. Here is the Group Anagrams Solution review. - [Install Docker and Docker Compose on Ubuntu 24.04](https://danielmlozano.dev/install-docker-and-docker-compose-on-ubuntu-24-04/) - earn how to install Docker and Docker Compose on Ubuntu 24.04 step by step using the official repository and plugin method. Updated for 2025. - [New and nice Where clauses for Dates in Laravel](https://danielmlozano.dev/new-and-nice-where-clauses-for-dates-in-laravel/) - Working with dates is a common task in applications of all sizes. Here, we love Laravel. It's a great framework and it has always made database queries a delight, thanks to Eloquent, its powerful ORM. Now, with the latest version, Laravel introduces new and improved where clauses for dates, making date-based queries even more concise - [HackerRank LinkedList Cycle Detection Solution](https://danielmlozano.dev/hackerrank-linkedlist-cycle-detection-solution/) - A linked list is said to contain a cycle if any node is visited more than once while traversing the list. Given a pointer to the head of a linked list, determine if it contains a cycle. If it does, return 1. Otherwise, return 0. Example head refers to the list of nodes 1 -> 2 -> 3 -> NULL The - [¿Cómo agregar swipe al carrusel de Bootstrap 3?](https://danielmlozano.dev/como-agregar-swipe-al-carrusel-de-bootstrap-3/) - Hace no mucho me encontré en un proyecto que se estaba realizando con Bootstrap. Al final del mismo, el cliente nos pidió que los slides o carruseles de imágenes tuvieran la posibilidad de cambiar mediante "swipe" al verse en un dispositivo móvil. Nunca había integrado esta funcionalidad con el carrusel de Bootstrap y este último no - [How to install MySQL Workbench on Elementary OS (Freya)](https://danielmlozano.dev/install-mysql-workbench-elementary-os/) - Hello there, I am, trying and testing some software development posts written in english, to see how many visitors engage. So here's the thing. A few days ago, I decided to work on my current projects in Elementary OS Freya, and in the many tools I use on regular basis, MySQL Workbench is one of - [Cómo instalar Node.js en Elementary OS](https://danielmlozano.dev/instalar-node-js-en-elementary-os/) - Una de las plataformas de desarrollo del futuro (y presente) que sin duda todo desarrollador debe aprender para estar al día, es Node.js. Con esta pequeña y práctica guía, veremos cómo instalar Node.js en Elementary OS con un par de comandos, así como las build-tools para utilizar los repositorios NPM. Si ya estás familiarizado con Node.js, - [¿Eres programador de PHP? Debes usar Laravel.](https://danielmlozano.dev/eres-programador-de-php-debes-usar-laravel/) - PHP es uno de los lenguajes de programación web más usado, sino es que probablemente el más usado. Desde su creación en 1995, ha sido utilizado para servir miles y miles de sitios web de todo tipo. Desde simples páginas web estáticas, hasta grandes aplicaciones web y redes sociales. Su facilidad y flexibilidad, además de - [Quick thought: is PHP a bad programming language?](https://danielmlozano.dev/is-php-a-bad-programming-language/) - Is PHP a bad programming language? No, it is not. The only bad thing about PHP is the programmer who doesn't know how to use it. So, why people say that PHP is ugly? Well, I thing it is mostly because PHP is the most popular language for web development, and, so there are many - [Which Programming Language Should I Learn First?](https://danielmlozano.dev/programming-language-learn-first/) - Which programming language should I learn first? which is the best programming language to start learning? C++ or Java, which one do you recommend to learn first? These, are just some of the many questions that most people who want to start a developer career, ask in forums or groups. Even if they are studying at - [How to become a web developer](https://danielmlozano.dev/how-to-become-a-web-developer/) - Web development is one of the most requested careers by companies of all sizes, and I'm not talking only of some simple web page, but from landing pages to entire SAAS plattforms. The web developer, is a profile that must understand and master some skills that goes beyond programming knowledge. A sort of polymath that is - [Cómo instalar Laravel 5 en Mac OS X o Linux](https://danielmlozano.dev/como-instalar-laravel-5-en-mac-os-x-o-linux/) - En esta ocasión, vamos a ver cómo instalar Laravel 5 en Mac OS X, Linux o cualquier otro sistema operativo basado en Unix. Este es el primero de mis videotutoriales de Laravel que estaré creando para ustedes, así como de otros lenguajes y frameworks. En el video, les mostraré cómo instalar Laravel desde Composer, el - [La importancia del buen diseño para programadores](https://danielmlozano.dev/buen-diseno-para-programadores/) - Steve Jobs creía que la tecnología y el arte podían fusionarse para crear productos increíbles, que desafiaran el estatus quo. El hombre llevó a dos empresas a la cima del éxito gracias a esta filosofía. Tenía a Wozniak que era un excelente ingeniero y también tenía su propio buen gusto y obsesión porque cada elemento de - [¿Cuánto cobrar por una página web?](https://danielmlozano.dev/cuanto-cobrar-por-una-pagina-web/) - "¿Cuánto cobrar por una página web?" Es una de las preguntas más comunes cuando no empezamos en el mundo del desarrollo web y nos surgen pequeños o grandes proyectos que nos piden cotizar. Para saber cuánto cobrar por una página web, se deben considerar muchos factores. No se trata de estimar a "ojo de buen cubero" ## Páginas - [Home](https://danielmlozano.dev/) - Daniel Mendoza - Available for hiring - [About me](https://danielmlozano.dev/about-me/) - Hello! My name is Daniel👋 🚀 I'm a full-stack developer building SaaS, tools and software that solves real problems. 🛠️ Tech I work with: Frontend: React, Vue, Next and Nuxt Backend: Python (Django), Node (both js and ts) and PHP (Laravel) Databases: PostgreSQL, MySQL, Supabase, Mongo. Others: Docker, Linux sysadmin skills, bash scripting, Jenkins, AWS - [Side Projects](https://danielmlozano.dev/side-projects/) - This is some of the stuff I've been working on lately in my free time: UpAlert UpAlert is a server and site monitor tool. Its purpose is to help web owners and server administrators to monitor their sites and server services in real-time and get notified if something's wrong. Currently it's on beta. Technologies used: - [Documentation](https://danielmlozano.dev/docs/) - [Coming Soon](https://danielmlozano.dev/coming-soon/) - I'm working on something amazing!But don't worry, I'll back soon. ## Documentation - [Oxxo Pay](https://danielmlozano.dev/docs/laravelconekta/oxxo-pay/) - V1.1.0 now adds the Oxxo pay functionality. To create a new order that shall be paid with Oxxo Pay, you have to create an order: $order = $user->createOrder()->addProduct($product); And then, add the Oxxo pay as payment method: $order->withOxxoPay(); And finally, perform the charge: $payment = $order->charge(); This will return the same instance of \Danielmlozano\LaravelConekta\Payment class, - [Package installation](https://danielmlozano.dev/docs/laravelconekta/installation/package-installation/) - Require the Package via Composer $ composer require danielmlozano/laravel-conekta Publish the configuration file $ php artisan vendor:publish --tag="conekta-config" If necessary, publish the migrations as well php artisan vendor:publish --tag="conekta-migrations" Add your Conekta public and secret key to your .env file and your currency in ISO format CONEKTA_KEY=key_your_conekta_public_key CONEKTA_SECRET=key_your_conekta_private_key CONEKTA_CURRENCY=usd If you're using a custom User - [Orders/Charges](https://danielmlozano.dev/docs/laravelconekta/orders-charges/) - In Conekta, you need to create Orders and attach them the corresponding charge in order to receive payments. LaravelConekta implements natural API methods to achieve this task. We have two classes, Order and Product. Order instances contain the data needed to send to Conekta. Product objects, on the other hand, are intended to hold the - [Payment Methods](https://danielmlozano.dev/docs/laravelconekta/payment-methods/) - Once you have a Conekta Customer, you can add Payment methods. Currently, only cards types are supported. To add a payment method, you need the token of the corresponding card. You can read more about tokens on https://developers.conekta.com/page/bibliotecas-de-programaci%C3%B3n depending if you're on web or mobile. $token_id = $request->get('token_id') // The token for the card $user - [updateConektaCustomer](https://danielmlozano.dev/docs/laravelconekta/customers/updateconektacustomer/) - Object updateConektaCustomer() Update the Conekta Customer information Parameters Return value \Conekta\Customer instance - [asConektaCustomer](https://danielmlozano.dev/docs/laravelconekta/customers/asconektacustomer/) - Object asConektaCustomer() Return the Conekta customer for the model Parameters Return value \Conekta\Customer instance - [createAsConektaCustomer](https://danielmlozano.dev/docs/laravelconekta/customers/createasconektacustomer/) - Object createAsConektaCustomer() Create a Conekta customer for the given model Parameters Return value \Conekta\Customer instance - [Installation](https://danielmlozano.dev/docs/laravelconekta/installation/) - Installation is a pretty straight-forward process like any other Laravel Package - [Customers](https://danielmlozano.dev/docs/laravelconekta/customers/) - LaravelConekta is intended to use as a wrapper for the Conekta Official SDK, giving comprehensive and natural methods based entirely on your Laravel User model. In future versions, it's planned to allow subscriptions and "one-off" charges, but for now, everything is around the User model. Create a Conekta Customer In order to perform orders and - [hasConektaId](https://danielmlozano.dev/docs/laravelconekta/customers/hasconektaid/) - bool hasConektaId() Determine if the customer has a Conekta customer id Parameters Return value bool - [LaravelConekta](https://danielmlozano.dev/docs/laravelconekta/) - Laravel package that provides a simple, easy-to-use interface to Conekta Payment services. - [Requirements](https://danielmlozano.dev/docs/laravelconekta/installation/requirements/) - LaravelConekta requires at least: Laravel 7 or higherPHP 7.4 or higherAn active Conekta Account ## Categorías - [Software Development](https://danielmlozano.dev/category/software-development/) - [Cursos](https://danielmlozano.dev/category/cursos/) - [Diseño](https://danielmlozano.dev/category/diseno/) - [Professional Hacks](https://danielmlozano.dev/category/professional-hacks/) - [Guides](https://danielmlozano.dev/category/guides/) ## Etiquetas - [Code Snippets](https://danielmlozano.dev/tag/code-snippets/) - [Programación](https://danielmlozano.dev/tag/programacion/) - [elementary os](https://danielmlozano.dev/tag/elementary-os/) - [how-to](https://danielmlozano.dev/tag/how-to/) - [mysql](https://danielmlozano.dev/tag/mysql/) - [software development](https://danielmlozano.dev/tag/software-development/) - [tutoriales](https://danielmlozano.dev/tag/tutoriales/) - [workbench](https://danielmlozano.dev/tag/workbench/) - [JavaScript](https://danielmlozano.dev/tag/javascript/) - [NodeJS](https://danielmlozano.dev/tag/nodejs/) - [Tutorial](https://danielmlozano.dev/tag/tutorial/) - [Eloquent](https://danielmlozano.dev/tag/eloquent/) - [frameworks](https://danielmlozano.dev/tag/frameworks/) - [Laravel](https://danielmlozano.dev/tag/laravel/) - [PHP](https://danielmlozano.dev/tag/php/) - [Web Development](https://danielmlozano.dev/tag/web-development/) - [Composer](https://danielmlozano.dev/tag/composer/) - [Instalar Laravel](https://danielmlozano.dev/tag/instalar-laravel/) - [Linux](https://danielmlozano.dev/tag/linux/) - [Mac OS X](https://danielmlozano.dev/tag/mac-os-x/) - [videos](https://danielmlozano.dev/tag/videos/) - [beginners](https://danielmlozano.dev/tag/beginners/) - [code](https://danielmlozano.dev/tag/code/) - [first programming language](https://danielmlozano.dev/tag/first-programming-language/) - [how to learn programming](https://danielmlozano.dev/tag/how-to-learn-programming/) - [programming language](https://danielmlozano.dev/tag/programming-language/) - [tips](https://danielmlozano.dev/tag/tips/) - [desarrollo web](https://danielmlozano.dev/tag/desarrollo-web/) - [diseño](https://danielmlozano.dev/tag/diseno/) - [marketing](https://danielmlozano.dev/tag/marketing/) - [cuánto cobrar por un sitio web](https://danielmlozano.dev/tag/cuanto-cobrar-por-un-sitio-web/)