Profile

Cover photo
Brian Sayatovic
Works at A Legal Services Software Company
Attended University of Cincinnati
Lives in Ohio
279 followers|193,007 views
AboutPostsPhotosVideosReviews

Stream

Brian Sayatovic

Shared publicly  - 
 
The public is being stolen from again!  Rant:

The public domain is basically the entirety of human knowledge and creation, freely accessible to anyone and everyone.  But inventors and creators should be able to earn a living, so we have patents and copyrights.  In the United States, these date back to the founding of our country.

Since that time, #copyright terms have been extended from 14 years to over a century.  One of the most (if not the most) recent times was the Sonny Bono Act (a.k.a. Mickey Mouse Protection Act, Copyright Term Extension Act) in 1998.  Furthermore, those extensions have often been retroactive, giving longer copyrights to creators than what they expected at the time they created their works.

Each time this happens, it robs the public of unfettered access ti what otherwise would have been in that public domain.  And now it's about to happen again.  The #TPP (Trans Pacific Partnership) is set to extend copyrights to creator's life plus 50 years!

It's being done in the name of harmonizing copyright laws, which I don't disagree can made international trade easier.  I only wish that harmonization weren't exclusively a one-way, upward ratcheting.
 
A quarter of a billion people are about to lose access to 20 years of the public domain, unless we can stop the TPP.
Our Last Stand Against Undemocratic International Agreements That Ratchet up Term Lengths and Devastate the Public Domain
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
A backdoor for the government is a backdoor for everyone.
 
A "golden key" that unlocks crypto backdoors for law enforcement and nobody else is nonsense, writes Sarah Jeong for Motherboard.
A backdoor to encryption, even if euphemistically rebranded as a “front door” or a “golden key,” is by definition a vulnerability.
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
A reversible #USB cable means you won't struggle to plug your charger into your phone the right way. While this looks like clever engineering, I've seen some dissenters saying this will fatigue and break connectors over time.

But isn't there a simpler solution? Why not make the shoulder of the connector asymmetrical? Most of cables are black, flat plastic rectangles around the connector, looking the same from above or below. I don't need a reversible connector. I need a connector where I can know if I'm holding it right or wrong.

Of my dozens of USB cables, I have one with a pinched hump on one side. I can't tell you which side that hump is on, but I quickly learned which way to hold it when plugging in my phone.

But we don't need a hump. Small bumps or grooves would work. The human finger is very adept at sensing texture. Color would also add contrast. You would quickly learn that the red side is up and your thumb should be feeling the bumpy side, for example.

I appreciate the design of this reversible connector, but I think there was an easier solution. 
MicFlip : World's First Fully Reversible Cable ( USB A and Micro USB ports are reversible ) | Crowdfunding is a democratic way to support the fundraising needs of your community. Make a contribution today!
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
Domain Driven Design Could have Saved The Day

I'm a Software Developer.  I'm a #DDD  enthusiast.  Recently, I was reminded why.

Years I was introduced to #DomainDrivenDesign  and have found it to be extremely useful in many of the business applications I've developed.  The last few have been implemented in #DotNet  with #NHibernate  as the ORM.

I recently encountered a production problem that, it turns out, could have been avoided if one particular DDD pattern had been followed: Never create an entity in an inconsistent state.  By adhering to this, it becomes syntactically impossible to encounter an invalid entity.

In this case, there was an entity that could be created in an invalid state: Settings.  A Settings has a TaskDefinition child entity.  The schema correctly enforced a NOT NULL FK constraint for the child entity; however, the Settings constructor did not accept nor instantiate its own TaskDefinition.

The code that broke looked something like this:

1. var settings = new Settings(...)
2. // do some other stuff
3. settings.TaskDefinition = new TaskDefinition(...)
4. Commit

This code happened to work in local and QA testing, but broke in production.  The production system had additional data and configurations that drove the complex logic behind step 2 to do quite a bit more than it had in the local or QA tests.  This extra work filled up NHibernate's buffer to the point that it decided to automatically flush it, including the invalid Settings object, before step 3.  The outcome: a SqlException ruining my morning.

The code was fixable with a little refactoring; however, I wish it hadn't gotten that far.  If our no invalid entities DDD guideline had been adhered to, it wouldn't have gotten that far.
1
1
Brian Sayatovic's profile photo
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
Happy Independence Day! 
1
Add a comment...
In his circles
120 people
Have him in circles
279 people
Brian Sayatovic's profile photo
Samantha Esteves's profile photo
Kate Jenkins's profile photo
Scott M. Sanders's profile photo
Ramesh Kamath's profile photo
Jon Bauerle's profile photo
Chris Parnin's profile photo
Kevin Payton's profile photo
Kevin Finke's profile photo

Brian Sayatovic

Shared publicly  - 
 
The things I do for free stuff.
The Google+ experience for AndroidGuys.com
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
It's important to have a backup plan. Meet Sol 2.0.
1
Add a comment...

Brian Sayatovic
owner

Discussion  - 
 
Domain Driven Design Could have Saved The Day

I'm a Software Developer.  I'm a  enthusiast.  Recently, I was reminded why.
 
Domain Driven Design Could have Saved The Day

I'm a Software Developer.  I'm a #DDD  enthusiast.  Recently, I was reminded why.

Years I was introduced to #DomainDrivenDesign  and have found it to be extremely useful in many of the business applications I've developed.  The last few have been implemented in #DotNet  with #NHibernate  as the ORM.

I recently encountered a production problem that, it turns out, could have been avoided if one particular DDD pattern had been followed: Never create an entity in an inconsistent state.  By adhering to this, it becomes syntactically impossible to encounter an invalid entity.

In this case, there was an entity that could be created in an invalid state: Settings.  A Settings has a TaskDefinition child entity.  The schema correctly enforced a NOT NULL FK constraint for the child entity; however, the Settings constructor did not accept nor instantiate its own TaskDefinition.

The code that broke looked something like this:

1. var settings = new Settings(...)
2. // do some other stuff
3. settings.TaskDefinition = new TaskDefinition(...)
4. Commit

This code happened to work in local and QA testing, but broke in production.  The production system had additional data and configurations that drove the complex logic behind step 2 to do quite a bit more than it had in the local or QA tests.  This extra work filled up NHibernate's buffer to the point that it decided to automatically flush it, including the invalid Settings object, before step 3.  The outcome: a SqlException ruining my morning.

The code was fixable with a little refactoring; however, I wish it hadn't gotten that far.  If our no invalid entities DDD guideline had been adhered to, it wouldn't have gotten that far.
2
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
* #Windows10  is looking nice, but* the second-hand hardware I'm trying it on it challenging it.

This machine has an ATI RV370 graphics card.  The +AMD Catalyst Drivers assured me they would work on #Windows 10 Insider Preview, but the installer reports a failure.  So instead it's using the Microsoft Basic Display Adapter, which only supports a handful of display modes.

Top that with my older monitor supporting DVI while the computer has Display Port, so I've had to fall back to an analog VGA connection.

I'm hoping when Windows 10 is released on July 29th that #AMD  will follow with an updated driver.  In the meantime, I'm going to research DisplayPort to DVI adapters.
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
Who's trying to break the Internet? Someone has been physically attacking the infrastructure. 
Crews for backbone Internet companies have restored service in California's Bay Area after someone deliberately cut three fiber-optic cables early Tuesday morning.
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
#Inception?

No... Just Chromecast'ing my phone to the TV as I take a picture of it. 
1
Add a comment...

Brian Sayatovic

Shared publicly  - 
 
A view at night. 
1
Add a comment...
People
In his circles
120 people
Have him in circles
279 people
Brian Sayatovic's profile photo
Samantha Esteves's profile photo
Kate Jenkins's profile photo
Scott M. Sanders's profile photo
Ramesh Kamath's profile photo
Jon Bauerle's profile photo
Chris Parnin's profile photo
Kevin Payton's profile photo
Kevin Finke's profile photo
Work
Occupation
Enterprise Architect
Skills
Enterprise and application architect, .NET, Java, ...
Employment
  • A Legal Services Software Company
    Sr. Software Architect, 2009 - present
  • The Midland Company
    Sr. Application Designer, 2003 - 2009
  • Synchrony Communications
    Application Programmer, 2001 - 2003
  • Quicksand Development, LLC
    Application Programmer, 1999 - 2001
  • netcaddy.com
    Sr. Application Programmer, 1995 - 1999
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Ohio
Previously
North Carolina - Florida - Ohio
Links
Other profiles
Contributor to
Story
Tagline
Master Cloudweaver
Introduction

Master Cloudweaver

I'm a #DotNet programmer (formerly a #Java programmer) architecting and building enterprise applications (i.e. cloudweaving).  I'm an #Android fan.  I'm a husband.  I'm a father.  I'm a geek.  I'm survivor of Fairfield High School ('94) and University of Cincinnati ('99).  I know that I don't know everything but probably know more than I think I know while also thinking I know more than I actually do.

Bragging rights
I almost deserve the respect I get.
Education
  • University of Cincinnati
Basic Information
Gender
Male
Other names
Trinition
Apps with Google+ Sign-in
  • Tentacle Wars
  • 2048
  • Atomas
  • Clash of Clans
Everything was great! Out wait was much shorter than quoted. Our server, Tori, was very mindful and pleasant. The food was very good and very filling. I would definitely done here again.
Public - a month ago
reviewed a month ago
Food: Very GoodDecor: GoodService: Excellent
Public - 2 years ago
reviewed 2 years ago
2 reviews
Map
Map
Map