Alfred Nutile
    • Posts
    • Mocking, Python, Pytest
    • Windows Dev Box Try 3 2020
    • Using Python Lambda behind and ALB
    • Suggestions Around Building a Good Development Team in Parallel to Building a Good Product
    • Lambda Tips
    • Mocking in Python
    • PHP Xdebug Visual Code
    • Cognito and OAuth
    • PHPUnit CodeCoverage
    • Deploying Fargate
    • How to Troubleshoot and Issue
    • Bitbucket Pipeline
    • JSONEditor, Vue and Vuex
    • Laravel Filter Scope on a Model
    • Query Strings, Vue and Bootstrap Active Tab
    • Valet Laravel 7.1 and 7.2
    • Python3 Fixtures
    • PHPStan Setup
    • Vuex External File
    • Simple API_Token Auth for VueJS Components and Laravel
    • Dusk Screenshots to S3 of Failing tests
    • Windows Dev Box Try 2 2018
    • Laravel Queue Restart and 'Why are my changes not showing up'
    • Lambda and Github Webhooks
    • Query Strings and VueJS
    • Debugging AWS SAM
    • wip Fargate and Laravel
    • Getting Started with Orchestra Testbench for Laravel Package Development
    • GroupBy not Sorting by latest
    • BrowserSync and Laravel
    • Troubleshoot Laravel Socialite and Github login
    • Wrapping Libraries in Services JS
    • Passing from Blade to VueJs
    • Laravel and AWS Rekognition
    • Docker Laravel and Cron
    • Pusher and Laravel Updates
    • Dusk and Production (with Dusk disabled)
    • Testing Laravel API, Spark with Authentication
    • Example of Making Documentation in Markdown with PDF Output
    • Serverless Python and Example App WIP
    • VueJS Transition Helper
    • Laravel Asset Notes WIP
    • PostMark SMTP for sending Notifications and Password Resets
    • Dusk Notes
    • Continuous Delivery in a NutShell
    • Laravel Shift and Your Day Job
    • Wrapping JSONEditor in Vue as Well as Laravel Blade
    • Laravel, Dusk and Valet
    • WIP AWS Batch and Workers with Laravel
    • Mocking Models OutSide of Laravel
    • Versions and Branching a Library
    • Serverless and Custom Tags for Resources
    • Setting Up My Mac
    • Serverless, AWS API Gateway and Authentication
    • IronFunctions and PHP
    • Testing a trait with PHPUnit
    • Machine to Machine Laravel Passport
    • Meetings and Cross TimeZone Teams
    • Dusk and Homestead
    • Simple Slack Trait Get Request and return Response
    • We Code in the Context of our Quoting
    • Instantiate Request for Testing
    • Load Testing With Behat
    • Example Job Format for Queue
    • LarScanner simple foundation for building a good Laravel Security Scanner
    • Super Simple Sending Messages to Slack from Laravel
    • Pusher and PHP 'Error Failed to connect to Pusher'
    • Model Boot Events
    • Queue onConnection
    • Guzzle 5 or 6 or ????
    • Chrome update equals Behat Fail
    • Laravel and Casting 'JSON_UNESCAPED_UNICODE' Data
    • Laravel 5.x Cookbook Chat Area
    • Throttle Password Reset
    • Laravel Throttle Feature using IP address as Key
    • Troubleshooting a Failed Build with Codeship and SauceLabs
    • Amazon Machine Learning
    • Mockery Behat and Laravel
    • Adding Basic Auth to Forge
    • Uploading Images in Behat both at Domain Level and UI Level
    • Behat Laravel Domain Testing Inside Out
    • Keeping a Controller Method Simple
    • Example of Mixing it up Behat BDD and PHPUnit
    • Homestead and Auto Setup Hosts File
    • API Token Based Access Laravel 5.1 (Yet another article on this)
    • Contract Testing
    • Getting Going Quickly Windows, Behat and Selenium
    • AWS, S3 Storage and limited Visibility
    • Behat and Uploading Files to a Form Even on Remote Selenium2 Servers
    • Laravel, PHPUnit, Require_Once on Routes
    • Remote Behat Testing with Laravel
    • CMS or NOT CMS
    • Feature Flags In Laravel
    • Install Webdriver to get testing with Behat and Javascript
    • Slack Custom Commands and Laravel to Make an American to British Translater
    • Then Benefits of Building a Clickable POC as a Developer
    • Put It All Into Version Control Even Composer!
    • Why Side Projects are Good For Me
    • Do I Really Need This Route Anymore?
    • Logout User After Inactivity Laravel and Milddleware
    • CentOS or RedHat and Laravel
    • Quick Tip Forcing More Complex Passwords in Laravel
    • Image Uploads, Laravel, Angular and Flow.js
    • Simple Example of Making Code Easier to Read
    • Spark Setup Issue
    • Adding Expose IDS to Laravel MiddleWare
    • Note To Self: A VirtualBox machine with the name 'homestead' already exists.
    • Laravel and Angular Widgets e.g. Non SPA (Single Page Application) Pattern
    • Laravel 5.1 and Oauth
    • Talking to the Methods Not the Properties
    • Using your project docs inside the application
    • Behat for Product Owners
    • HasMany Through a Many to Many
    • Adding RSS to Your Site
    • Bower and Elixir
    • Quick way to Request Json from Angular and return from Laravel
    • Laravel 5.1 Behat and Codeship
    • Conventions to Help Minimize your ENV File
    • Start to end Billing using Stripe, Cashier and Laravel 5.1
    • Codeship and Laravel for Continuous Integration
    • Logging in Iron.io Workers
    • Writing Commands and Scheduling in Laravel 5.1
    • Easily Create Fixture Data from Remote Services and Refresh Mock Data
    • Adding Cache to your Laravel Site
    • Iron.io and Lumen
    • Quick way to mock data for Behat in Laravel
    • Code for making a Shortcut tool for your App
    • Using Faker and ENV vars with Behat
    • Using a BurnDown Chart to Pace Yourself
    • Behat and PhantomJs
    • PHP Error: Maximum function nesting level of '100' reached, aborting Behat
    • Iron.io Laravel and Workers, Microservices
    • Multi Domain Nginx Redirect
    • Sending Dates to Angular from Laravel
    • Dealing with Oauth2 Server and Laravel for both a local app login and for remote apps using Lucadegasperi/oauth2-server-laravel
    • Simple Look at Laravel Events
    • Laravel-Flysystem and Creating Time Limited Public Urls on S3
    • Laravel Behat and Selenium
    • Linux, Behat and installing ChromeDriver
    • Sqlite and Laravel
    • Timing PHPUnit Tests
    • Reusable UI/API CRUD Laravel and Angular
    • Laravel Blade and Angular brackets
    • Angular History Based BreadCrumbs
    • Embed Template Data in View (Angular, Laravel)
    • Quick fixture data and mocking external APIs
    • Mocking Queue Service for faster Behat Testing
    • Redirecting back to original Angular.js destination from Laravel Auth
    • Docker, MailCatcher and Laravel
    • PHP quick fixture data for phpunit testing
    • Nginx force SSL
    • Moving Forge Deploy Script to Envoy
    • Laravel and Angular Time/Date Display
    • Laravel 4.2 and Dotenv to set environment
    • Speeding up PHPunit tests and Behat in Laravel for Database refreshes
    • Angular Pusher Factory to Centralize Code (also using Laravel to set constants and properties)
    • CSRF Tokens and Angular.js
    • Temporary Auth Updates L5
    • Chrome and Behat
    • Design Guide - Controllers, Services and IOC
    • Multi Threaded Queue Processing
    • Team Style Guides and Mind Set
    • Sorting related models in Laravel
    • Behat for testing RESTful APIs
    • Boris REPL and you Applicatoin (Silex in this case)
    • SSL and Homestead
    • Drush and Homestead Vagrant Box
    • Polymorphic relationship Laravel
    • Quick way to traverse a nested php arrray
    • Using VCR for PHP API Testing
    • Saucelabs PHP Client
    • Many to Many Polymorphic Relations from Laravel to Angular and back
    • Laravel Sentry and UUID
    • Laravel Homestead and MailCatcher
    • Laravel Homestead and Beanstalkd Console
    • Restangular and nested responses
    • Behat Test more than number of elements
    • When you have to use Angular inside of Drupal
    • Transforming Output from the Database to the View/REST layer
    • Showing nested relationships details
    • Simple Laravel CMS Example
    • Quick Gulp file to run php-unit tests
    • Laravel and non email authentication
    • Using Beanstalkd to Schedule the release of a post in Laravel
    • Behat Seed Repo
    • Using Dot Env files to manage settings
    • Using Scopes in Laravel
    • Quick way to add text to a hidden ckeditor field
    • Github CLI to get Teams and Members of an Org
    • Mink Assertions
    • Drupal and Composer install or update
    • Adding Column using sqlite caused error 'Cannot add a NOT NULL column with default value NULL'
    • php artisan migrate:reset not working
    • Angular and Scope - or - How not to waste time figuring out why a scope value is not 'working'
    • Behat Checkbox
    • Adding Markdown Editor to your Blog/CMS
    • Running multiple tasks asynchronously with Drush, Drupal and MT
    • Building the UI first with Angular, Mocked Data and REST
    • Behat Vagrant install and local testing
    • GitWrapper Per Page settings KnpLabs / php-github-api
    • Angular and Laravel Partials
    • Using Github Pages for your help docs
    • Twig and Drupal 7
    • Drupal Services and Instantiating a Class
    • Guard, Laravel and phpunit
    • Angular.js, CKEditor, and REST including file uploads
    • Saucelabs Timeout
    • Angular Drupal and CSRF
    • Ng-if and Scope
    • Mocking drupal database queries
    • Ubuntu 12.04 and PHP 5.4
    • Laravel Project Management Site
    • Angular Watching a model and it's filters
    • Behat Resources
    • Nesting Laravel 4 Routes
    • Exploring Code and Laravel
    • Node.js error
    • Behat and bad HTML
    • Behat Mink and using Javascript / jQuery to test attributes
    • Keep it (functions/methods) small and simple
    • PHPSH
    • Behat and Drupal episode 1
    • Quick Script to update Heroku database
    • Bash History
    • Drupal FAPI Validation Error
    • Heroku in Heroku
    • Drush and Features-Export
    • Hosting is Dead?
    • HerokuApps and Multiple Domains
    • Global Redirect module after spaces / purl install does not
    • Ruby on Rails with CMS and other fun stuff
    • Paperclip and S3 and Ckeditor
    • RubyMine and BetterErrors
    • Installing mysql2 on a mac
    • NDA
    • Capistrano for non-rails sites
    • Angular Seed Testing Setup
    • Angular.js Ticket System
    • Paperclip and S3
    • Technologies for a Saas
    • My first Rails site for the masses.
    • Refinery CMS and Twitter Bootstrap
    • Vagrant and Laravel
    • Questions that may come in handy when interviewing
    • Hack For Change Challenge
    • Bootstrap Generator Gem Ruby on Rails
    • Using headless tests with Mink and Behat
    • ActiveAdmin Rails
    • Making lists from acts_as_taggable
    • Javascript Based Product Viewer
    • jQuery Address
    • CORS and Laravel
    • Great tip on Git and Jenkins to auto deploy
    • Going Angular.js
    • DrupalCamp Western Mass
    • Introduction
    Using Python Lambda behind and ALB

    Just a quick note to self about ALB and Lambda. When using Lambda behind and ALB for routing your response has to be formatted properly else you will get a 502. https://pypi.org/project/alb-response/ solved this problem. from alb_response import alb_response def lambda_handler(event, context): response_dict = process_the_event(event) return alb_response( http_status=200, json=response_dict, is_base64_encoded=False, ) The results are easy enough to do by hand but I had a bit of time really finding out the format to respond with other than JavaScript and that casing there was a bit confusing.

    February 6, 2020 Read
    Lambda Tips

    @WIP Taking advantage of a running Lambda function and it’s state https://aws.amazon.com/blogs/compute/sharing-secrets-with-aws-lambda-using-aws-systems-manager-parameter-store/ under the section Lambda function has a nice “trick” of setting above the class app = None then later on it will see if that is set def lambda_handler(event, context): global app # Initialize app if it doesn't yet exist if app is None: print("Loading config and creating new MyApp...") config = load_config(full_config_path) app = MyApp(config) return "MyApp config is " + str(app.

    August 1, 2019 Read
    Laravel Filter Scope on a Model

    So I find myself writing searchable pages that, via an API or what not, someone can filter the page by different fields on the model. This can end up being a Controller class that does a lot of filters off the Request. Or it can be a Repository class that abstracts the business logic into one place for several related models. But in many cases it really is just one Model being filtered.

    August 20, 2018 Read
    Valet Laravel 7.1 and 7.2

    ..

    August 18, 2018 Read
    Python3 Fixtures

    Just a reminder using pickle I can easily make fixtures for testing. When I get results from AWS SDK for example I can just import pickle with open("fixtures/describe_task_defination.pickle", 'wb') as fixture: pickle.dump(self.stored_state_to_save, fixture) Then when I want to feed it back in my test import pickle from unittest import TestCase from unittest.mock import patch from unittest import mock import pickle from task_image import TaskImage def getFixture(name): with open("fixtures/" + name, 'rb') as fixture: return pickle.

    August 10, 2018 Read
    Vuex External File

    Setup Vuex with external file https://vuex.vuejs.org/installation.html But after this make a file in the resources/assets/js called store.js then set it up as needed Here I will have one loading state export default { state: { loading: true, }, getters: { loading: state => { return state.loading; }, }, mutations: { loading(state, loading) { state.loading = loading; } } }; now import it into your app.js import store from './store'; and

    July 3, 2018 Read
    Windows Dev Box Try 2 2018

    Going to list somethings as I go. The Mac, in spite of Apple, is a great developer experience, here is to hoping the Windows, with the help of Microsoft, grows to be better and better as the improve it via user feedback to make it a great development box. Links This started it all https://char.gd/blog/2017/how-to-set-up-the-perfect-modern-dev-environment-on-windows Webdev on Windows with WSL and VS Code NPM and Composer install take a long time Some of this is the Windowsantimalware running.

    June 11, 2018 Read
    Laravel Queue Restart and 'Why are my changes not showing up'

    Just a note to self and others who have suffered this. If you are running queues locally, for what ever reason, then any changes you make in code you need to restart your queue daemon. php artisan queue:restart This will cause the daemon to look at a timestamp and restart if that is newer than before “e.g. you ran the above. And this will force the in memory process to update itself from the latest code base.

    May 20, 2018 Read
    Query Strings and VueJS

    Quick way to make the url reflect the query string so the user can share the url and filters. This is component based VueJS building so not an SPA But I still install "vue-router": "^3.0.1" And load it import VueRouter from 'vue-router'; Vue.use(VueRouter); The on the component I set a watch on the router. watch: { $route(to, from) { this.setModelFromQueryString(); this.search(); } }, In this case it will set the query strings then trigger the “search” to load the data into the page.

    May 8, 2018 Read
    BrowserSync and Laravel

    Quick reminder to take advantage of this amazing feature https://laravel.com/docs/5.6/mix#browsersync-reloading No more reloading your browser. yarn add browser-sync --dev then to your webpack.mix.js e.g. the domain of the site you are working on. mix.browserSync('foo.test'); finally yarn run watch Note turn off sourceMaps when running this else it can be kinda slow

    March 15, 2018 Read
    GroupBy not Sorting by latest

    Just to make this easy to find. I had a report to write which had numerous daily rows of the same related model data. So in this cause I was tracking servers and security reports. My reports where daily like this id server_id failed type 1 1 1 security 2 1 1 testing 3 1 0 testing But a groupBy here on server_id would return ID 1 so it would appear as if it was still failing.

    March 15, 2018 Read
    Troubleshoot Laravel Socialite and Github login

    This has driven me mad too many times. Basically you will get very little feedback if there is any issue getting the token from Github. The problem is in this method. public function user() { if ($this->hasInvalidState()) { throw new InvalidStateException; } $response = $this->getAccessTokenResponse($this->getCode()); $user = $this->mapUserToObject($this->getUserByToken( $token = Arr::get($response, 'access_token') )); return $user->setToken($token) ->setRefreshToken(Arr::get($response, 'refresh_token')) ->setExpiresIn(Arr::get($response, 'expires_in')); } This is in the vendor/laravel/socialite/src/Two/AbstractProvider.php So for example my real error was:

    March 4, 2018 Read
    • ««
    • «
    • 1
    • 2
    • 3
    •  … 
    • 6
    • »
    • »»
    ${Title}

    ${Summary}

    February 6, 2020 Read
    Navigation
    • About
    • Projects
    • Recent Posts
    • Achievements
    Contact me:
    • Email: me@alfrednutile.info
    • Phone: +1.413.230.4767

    Toha
    ICONS8
    Powered by Hugo Logo