acm-header
Sign In

Communications of the ACM

BLOG@CACM


bg-corner

A History of One Brute-Force Attack
From BLOG@CACM

A History of One Brute-Force Attack

A classic brute-force attack boils down to guessing credentials. In my scenario, though, the perpetrators acted somewhat differently.

Why Are There So Many Programming Languages?
From BLOG@CACM

Why Are There So Many Programming Languages?

Most languages differ less in what they make possible, and more in terms of what they make easy. 

Enterprise Metrics and Optimization
From BLOG@CACM

Enterprise Metrics and Optimization

Metrics are critical; without them, you are flying blind.  But be careful what you try to optimize, because you might just get it.

InnovateFPGA: Wrong Strategy Drives One of the Best FPGA Development Contests into Crisis
From BLOG@CACM

InnovateFPGA: Wrong Strategy Drives One of the Best FPGA Development Contests into Crisis

In my opinion, the main problem of the InnovateFPGA contest is the lack of a permanent team to lead.

Career Care for Engineers
From BLOG@CACM

Career Care for Engineers

Your career is a journey. You define where you want to go on that journey. You plan it out. You set goals. Your job, on the other hand, is a step along the way....

5 Often Overlooked Coding Mistakes New Web Developers Need to Avoid
From BLOG@CACM

5 Often Overlooked Coding Mistakes New Web Developers Need to Avoid

Avoiding these common, easily preventable blunders will help you maximize success in your career journey.

Software Architecture Decisions: Culture Considerations
From BLOG@CACM

Software Architecture Decisions: Culture Considerations

Architecture decisions can have effects on a company and its culture that go beyond the soundness of the technology.

Developing Technical Leaders
From BLOG@CACM

Developing Technical Leaders

How does one get to Carnegie Hall?

Anti-Sanctions: New Operating System for Mobile Devices
From BLOG@CACM

Anti-Sanctions: New Operating System for Mobile Devices

There comes a time not only of crisis, but also of great opportunities. And here, it is important to take advantage of these new opportunities.

Your Job Can Be Done Better By My Algorithm
From BLOG@CACM

Your Job Can Be Done Better By My Algorithm

In our rarefied world of university teaching and learning, which jobs can be replaced by algorithms?

Making Bad Decisions
From BLOG@CACM

Making Bad Decisions

In software engineering, many technical decisions are context-dependent, and there are often complex edge cases to consider. 

High-Performance Mobile System-on-Chip Clusters
From BLOG@CACM

High-Performance Mobile System-on-Chip Clusters

Simply stating the problem is not enough; it is necessary to look for a quick way out of the situation, relying on available resources.

Data Anonymization Using the Random Sum Method
From BLOG@CACM

Data Anonymization Using the Random Sum Method

The purpose of this blog post is to present an anonymization method that can be applied to the digital attributes of personal data.

Blockchain For What, Exactly?
From BLOG@CACM

Blockchain For What, Exactly?

Considering the real-world consequences of blockchain hype.

R&D or r&d: What's the Difference?
From BLOG@CACM

R&D or r&d: What's the Difference?

Research produces generalized knowledge; Development produces generalized functionality. Not all efforts that use research skills or that use development skills...

Mental Self-Check
From BLOG@CACM

Mental Self-Check

Who is crazy: the rest of the world, or I?

Log4j and the Thankless High-Risk Task of Managing Software Component Upgrades
From BLOG@CACM

Log4j and the Thankless High-Risk Task of Managing Software Component Upgrades

Managing included versions of third-party software components too often puts developers in no-win situations.

Essentials of BI Dashboards
From BLOG@CACM

Essentials of BI Dashboards

A well-designed dashboard is everyone's dream come true.

Software Stories: Legal Trouble
From BLOG@CACM

Software Stories: Legal Trouble

Legal troubles represent another collection of potential pitfalls where developers often find themselves unprepared. 

Cultivating Habits: -1 +2 for Researchers
From BLOG@CACM

Cultivating Habits: -1 +2 for Researchers

The New Year is stereotypically the time when we resolve to start some good habits and get rid of some of the bad.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account