Posts
- Home /
- Posts
Top 5 Ways to Make a Developer Your Enemy
- 2 minutes - Apr 16, 2014
- #rant
Developers are known to be some of the most finicky employees you will encounter in the workplace. However, this is a list of things that will annoy or infuriate developers and non-developers alike.
- Have the IT Manager send an email to all staff saying that all computers will have a keylogger installed. – This one is wrong on so many levels, the least of which is that it shows how little faith the company has in its employees and breeds mistrust of authority.
- As a Manager or Team Lead, take ideas and suggestions from meetings with your team, and pass them off to upper management as your own. – This just reeks of someone that is only in it to gain more and more power.
- As a Manager, don’t take the heat when things go wrong and blame the lowest-level employee instead. – I’ve seen senior management that is supposed to keep track of projects, ignore the project, and when it is the due date, blame those doing actual work on the project, throwing them under the bus.
- As a new employee, on your second day of work, tell anyone that will listen or is within earshot that you are able to rewrite the entire codebase in three short months. Bear in mind, this codebase is over 7 years old and has a team of more than 20 developers working on it, but of course the newbie can rewrite the entire thing in no time flat.
- As Management, when a developer hands in his/her resignation, schedule a meeting to try to first place a guilt trip on said employee to convince them to stay. If that doesn’t seem to work, then threaten to give the employee negative referrals if they don’t rescind the resignation and continue working for the company. Keep in mind that this occurred in a right to work state, meaning that there is no agreement in place that the employer would not wait a day or week or month and fire the employee without cause, just out of spite for wanting to work elsewhere.
These are just some of the things that will anger a software developer, so, be aware to avoid these if it matters at all to you.
Read MoreVarnish and Magento Performance Mystery
- One minute - Apr 14, 2014
- #magento#varnish#performance
One of the things that you think you will solve when you implement a Varnish caching server in front of a Magento website is performance problems. However, this is not necessarily the case.
When I set Varnish up to cache content in front of my Magento website, I get what seems to be much improved performance. If I run a few tests in the developer tools of Chrome, it seems that the waterfall chart makes sense and the data is loaded appropriately and in a timely manner with the main HTML being downloaded in about 300ms.
Read MoreHow Not to Use SQL Transactions
- 2 minutes - Apr 11, 2014
- #microsoft#sql-server
SQL Transactions allow you to isolate atomic operations so that you can ensure that a third party does not update the data affected during the atomic operation protected by the transaction. An example of an operation that you would want to protect with a SQL Transaction would be transferring funds from one bank account to another. The first step of this operation would be to subtract the funds from bank account A. Once complete, we would then add the same amount of funds to bank account B. Assuming nothing fails, everything works as expected. However, if there is other database activity at the same time or an error occurs in one of the queries, without a transaction you could have the funds removed from bank account A or added to bank account B, but not both, causing a major balancing issue with your bank accounts.
Read MoreUnexpected Results with SQL Server and Python pyodbc
- 2 minutes - Apr 10, 2014
- #microsoft#sql-server#python
Using the Microsoft SQL Server Management Studio (SSMS) with SQL Server hides many of the API complications that can sometimes arise when working with SQL Server. One specific example would be when using Python on Windows with the pyodbc driver. If you have an update statement that performs a simple update to a status column and a datetime column, you can have some unexpected results.
Lets say that the table you are running the update against has a before update trigger and an after update trigger configured on it. Both triggers effectively do the same thing, as they log the current affected row to a second, logging table, peforming separate insert statements to do so. When running this update statement in SSMS, it seems to behave as you would expect, with a single result set returned, but listing three sets of (1 row updated) for every row that was updated. When using Python’s pyodbc driver to run this exact same SQL update statement, it shows that only 1 row was updated when there should have been many updated.
Read MoreSQL Server Transaction Log Exponential Growth
- One minute - Apr 9, 2014
- #microsoft#sql-server#python
There are few things more frustrating than seemingly random issues that crop up in software when configuration changes occur. One such occurrence is when you migrate your databases from Microsoft SQL Server 2012 Standard Edition to Microsoft SQL Server 2012 Enterprise Edition with High Availability and the transaction log suddenly begins to experience exponential growth without ceasing.
It turns out that when using Python and pyodbc on Windows to access SQL Server, there can be some unpredictable results. If you have a long-running SQL query that you are running from Python and pyodbc, when you are running it against a Microsoft SQL Server 2012 Standard Edition database, it will fail and time out silently, making Python think that the query succeeded. On the other hand, if you run the same long-running SQL query from Python and pyodbc in Microsoft SQL Server 2012 Enterprise Edition with High Availability, it will fail and rollback the query, but will fill the transaction log.
Read MoreWordPress and the Genesis Framework
- One minute - Apr 8, 2014
- #genesis-framework#wordpress
It turns out that working with WordPress and the Genesis Framework is quite a bit different than working with Magento or other blogging platforms. Ghost is a blogging platform that runs on NodeJs that utilizes Handlebars templates for the layout of the content on the website itself. Similarly, Magento uses its own templating system in .phtml files for laying out content on the screen. However, WordPress, and specifically the Genesis Framework have taken this simple templating concept and added quite a few layers of abstraction to come to the end result. This does give WordPress a great deal of extensibility for the various plugins that have been written for WordPress. Unfortunately, this makes for a steeper learning curve for developers working on a WordPress website.
Read MoreSaving Products in Magento Deletes Tier Pricing
- 2 minutes - Apr 6, 2014
- #magento#tier-pricing
Magento’s framework makes many things simple to accomplish when working with the products and categories of your eCommerce website. However, I have found one scenario that doesn’t exactly work as expected.
Tier Pricing in Magento
Magento allows you to setup custom pricing levels based upon the quantity purchased. You set the minimum quantity purchased to enable the lower price when the part is added to the customer’s cart. You could see where losing the tiered pricing for an entire catalog of products would be a big deal for a site.
Read MoreCreating a Best-Sellers Category with Magento
- 2 minutes - Apr 4, 2014
- #magento
Magento allows you to organize products in categories, and a single product can be a member of quite a few separate categories. As a result, you can create a category that is specifically for your top selling products. You could manually keep track of which products sell the best, either by number of sales completed, or by the actual quantity of each product that were sold. If you want to spend all your time managing this category, then this is the way to go. However, there is a much easier way to manage the products in the category.
Read MoreSticky Menus and Mega Drop Down Menus
- 2 minutes - Apr 3, 2014
- #ux
There are time when UX best practices for the web don’t always provide the best experience for the users of a website. One example would be Sticky Menus and Mega Drop Down Menus.
A Sticky Menu is a navigation bar that is stuck to the top of the screen when scrolling, usually with position:fixed;top:0; set on the menu itself. This ensures that no matter how far the user scrolls on the page, the site’s navigation is always available to the user without having to scroll to the top of the page.
Can Legacy Internet Explorer Go Away Already?
- 2 minutes - Apr 2, 2014
- #internet-explorer
For years, Internet Explorer was a four-letter word around web developers. Recently, Microsoft has stepped up their game when it comes to their web browser. I almost have to pinch myself to make sure I’m not dreaming when I type this, but Internet Explorer 10 and 11 are decent and modern web browsers that many websites don’t have to do anything special to support.
However, Internet Explorer 9 and before are another story. The latest compatibility problemn I ran across would be one that is quite confusing to a web developer that has not been around those that have dealt with it before. The symptoms are that CSS rules that you can verify are in your CSS file are not being applied in Internet Explorer, but are applied in Chrome, Safari, Firefox, etc.
Read MoreCategories
Tags
- 100pounds
- 2020
- Acp
- Adblock-Plus
- Adoption
- Agentic
- Agents
- Agile
- Ai
- Ai-Agents
- Amazon
- Apache
- Apple
- Architecture
- Authorize-Net
- Automation
- Azure
- Benchmarks
- Bing
- Bingbot
- Blog
- Book-Reviews
- Books
- Burnout
- Business-Tools
- Cache
- Career
- Chatgpt
- Chrome
- Cicd
- Claude
- Cloudflare
- Code-Quality
- Code-Review
- Codex
- Coding
- Coding-Agents
- Compass
- Conversion
- Copilot
- Css
- Culture
- Cursor
- Cve
- Design-Patterns
- Developer-Experience
- Developer-Tools
- Developer-Velocity
- Development
- Disqus
- Docker
- Documentation
- Enterprise
- Fine-Tuning
- Firefox
- Future-of-Work
- Gemini
- Genesis-Framework
- Getting-Started
- Ghost-Tag
- Github
- Github-Copilot
- Githubpages
- Google-Slides
- Google-Workspace
- Governance
- Helper
- Hiring
- How-Not-To
- How-To
- Html
- Hugo
- Ide
- Infrastructure
- Integration
- Internet-Explorer
- Interviews
- Iphone-6
- Javascript
- Jekyll
- Jetbrains
- Jquery
- Junior-Developers
- Knowledge-Management
- Laravel
- Leadership
- Legal
- Lessons-Learned
- Llms
- Local-First
- MacOS
- Magento
- Magento 2
- Magento2
- Management
- Mcp
- Meetings
- Mental-Health
- Mentorship
- Metr
- Metrics
- Microsoft
- Moltbot
- Multi-Agent
- Mysql
- Netlify
- Nginx
- Nodejs
- Open-Source
- Openai
- Openclaw
- Orchestration
- OSX
- Performance
- Personal
- Php
- Policy
- Presentations
- Process
- Productivity
- Programming
- Prompt-Injection
- Pull-Requests
- Python
- Quality
- Rant
- Remote-Work
- Research
- Responsive-Web-Design
- Retrospective
- Roi
- Safari
- Sales
- Scrum
- Security
- Senior-Engineers
- Series
- Sitecatalyst
- Sota
- Sql
- Sql-Server
- Tasks
- Teams
- Technical-Debt
- Testing
- Tier-Pricing
- Tips
- Tmobile
- Tools
- Trust
- Unittest
- Ux
- Validation
- Varnish
- Verification
- Vibe-Coding
- Visual-Studio
- Vs-Code
- Web-Development
- Windows-7
- Windows-Vista
- Woocommerce
- Wordpress
- Workflow
- Workflows
- Xml