ianchanning + programming   621

Why should I have written ZeroMQ in C, not C++ (part I)
C++ exceptions just didn't fill the bill. They are great for guaranteeing that program doesn't fail — just wrap the main function in try/catch block and you can handle all the errors in a single place.

However, what's great for avoiding straightforward failures becomes a nightmare when your goal is to guarantee that no undefined behaviour happens. The decoupling between raising of the exception and handling it, that makes avoiding failures so easy in C++, makes it virtually impossible to guarantee that the program never runs info undefined behaviour.
C++  c  blogs  programming  softwareEngineering  objectorientated 
4 weeks ago by ianchanning
Less is exponentially more
If C++ and Java are about type hierarchies and the taxonomy of types, Go is about composition.
go  programming  blogs 
march 2018 by ianchanning
A founder's perspective on 4 years with Haskell
Thus, Haskell seems like a particularly good fit for software where correctness and quality matter.
haskell  blogs  programming  tests  testing 
july 2016 by ianchanning
« earlier      
per page:    204080120160

related tags

24pr  24pullrequest  97things  accessibility  ada  adventure  advice  aggregator  agile  ai  airbnb  ajax  alankay  algorithm  algorithms  allthis  analogies  analysis  analysisservices  android  angular  angular.js  angularjs  antipattern  antipatterns  apache  api  apis  application  applications  apps  aprender  architecture  arduino  Arguments  art  articles  ascii  asp.net  assembly  async  asynchronous  atom  attacks  attention  authentication  autoloading  automation  awesome  awk  backbone  backbone.js  bakery  balls  bash  bat  batch  bayesian  bbc  bcrypt  bdd  behavior  behaviour  benchmark  best  bestpractice  bestpractices  big  binary  blackhole  blacklist  blogs  boardgame  bookmark  books  bots  branch  branching  browser  bugs  build  builderpattern  building  burnout  business  c  c#  c++  cache  cake  cakephp  cakephp1.2  callback  canvas  career  case  catalyst  categorytheory  changelog  chaos  chart  charts  chat  chatbots  cheatsheet  cheatsheets  cheat_sheet  checksum  children  choose  cinlug-developer  classes  cleancode  cleaning  clojure  cloud  cloudcomputing  cmd  cms  co-location  coda-themes  code  code-editor  codeeditor  codeigniter  codeigniter-people  codejam  codemagic  codepen  coding  codinghorror  collection  color  colorscheme  colorthemes  command  commandline  community  comparison  competition  compile  compiler  complete  composer  compressor  compsci  computer  computers  computerscience  Computer_Stuff  computing  concepts  concurrency  console  consul  contextswitching  continuousintegration  contribute  cooking  core  countdown  counter  country  course  courses  cpu  cracking  creativecoding  creativity  credit  creditcard  criticism  cron  crontab  crossplatform  crowdsourcing  crypto  cryptography  cs  css  css3  cucumber  culture  cycle  cygwin  data  database  databases  datamining  datamodels  datastructures  dave  debian  debug  debugger  debugging  deepdive  demeter  dependency  dependencyinjection  depression  design  design-patterns  designpatterns  desktop  detection  dev  developer  developers  development  devops  diaspora  dijkstra  directory  discussion  distributed  divers  diy  django  djb  docker  docs  document  documentation  donaldknuth  doom  download  downloads  doxygen  dr  drive  driven  dropbox  drupal  dry  dsl  eastereggs  ebook  ebooks  eclipse  ecommerce  editor  education  effects  ego  electronics  emacs  email  embedded  emmet  employment  empty  encapsulation  encoding  encryption  engine  engineering  entrepreneur  erlang  error  errors  ESA  escaping  essay  essays  estimates  estimating  estimation  etherpad  event  example  examples  exception  exceptions  exec  exercise  expression  expressions  expressjs  extensions  externals  extjs  f#  facebook  feed  feeds  fig  filesharing  filetype:pdf  filtering  find  firefox  firewall  fiter  fixes  fizzbuzz  flux  font  fonts  football  form  forms  forreview  forum  forums  fourier  fp  fractals  frameworks  free  freelance  freelancing  freespeech  frontend  FSM  fuel  fun  function  functional  functionalprogramming  functional_programming  funny  fwp  game  gamedesign  gamedev  gameengine  games  gaming  gateway  gcc  gedit  geek  generator  generators  geolocation  geometry  git  gitflow  github  globals  glossary  gnolia-import  gnome  go  google  googlemaps  gotchas  goto  graph  graphics  graphs  GTD  gtk  gui  guide  guideline  guidelines  guides  habtm  hack  hacker  hackers  hacking  hard  hardware  hash  hashbang  hashing  hasicorp  haskell  haxe  headless  health  help  hhvm  hilbert  hiring  history  hosting  howto  hr  htaccess  html  html5  http  hub  humor  humour  hungarian  i18n  icons  ide  ideas  idioms  iis  iis7  imperativeprogramming  independent  indie  infinite  information  inheritance  injection  inspiration  install  installer  integration  intelligence  interactive  interesting  internet  interview  interviewquestion  Interviews  intro  introduction  ios  ip  ipython  isset  jargon  java  javascript  javascriptlabel  javascriptoverlay  jira  job  jobs  joel  joelonsoftware  join  joins  jokes  jquery  js  jsbin  jsfiddle  json  jsonp  kanban  kernel  keys  kids  kindle  konstrukt  labyrinth  lambda  lamp  language  languagejavascript  languages  laravel  latency  laziness  learning  learnjavascript  lectures  leer  lerdorf  lessons  libraries  library  life  lifehacking  lifestyle  lighttable  links  linux  lisp  list  lists  liveweave  living  localization  lock  locks  logging  logic  logs  lol  lowlevel  luhn  lwn  machinelearning  magazine  make  makefile  management  mangling  manifesto  manual  map  mapping  mapreduce  maps  markdown  markup  math  mathematics  mcconnell  media:document  median  memory  mentoring  menu  messaging  methodology  metrics  microservices  microsoft  migration  minecraft  minify  minimum_viable_product  mining  mit  ml  mobi  mobile  model  model-view-controller  models  mods  modular  modules  monads  money  monitoring  monkey  monospace  mooc  motherfucker  motivation  motivational  mozilla  multiplatform  music  mvc  mvp  mvvm  mysql  myths  NaCl  name  nasa  netbeans  nettuts  network  neuralnetworks  news  nlp  node  node.js  nodejs  notation  notebook  nsis  nusoap  nyc  object  objectorientated  objectoriented  ocaml  offline  online  onload  oodooboo  oop  ooprogramming  open  opencourseware  opensource  openstreetmap  opinion  optimization  oreilly  osc  osx  overlay  own  P2PU  pac  pack  paginate  pagination  pair  papers  paradigms  parallel  parenting  parttime  passing  password  passwords  patches  pathfinding  patterns  paulgraham  pdf  pear  people  performance  perl  permissions  personal  phd  philosophy  phone  php  php-fig  php-phython  php5  phpass  phpcodingstyleguide  phpfig  phptutorial  phpunit  physics  pinteres  playing  plot  plugin  plugins  plunker  pomodoro  portable  portfolio  postgresql  potencier  practices  pragmatic  presentations  pricing  primate  principle  privacy  private  probability  problem  procedural  procedural-code  process  processing  processingjs  productivity  professional  profiler  profiling  program  Programmering  programming  programming-language  programming/rest  programminglanguage  programminglanguages  programmingquote  project  projectmanagement  projects  project_management  prolog  promotion  protocol  prototype  psr-0  psr-1  psr-2  psr-4  psychology  public  pullrequest  puppet  PuTTY  puzzle  python  python3  quant  quantity  query  questions  r  racket  RAD  rails  rainbow  random  Rapid  react  reactive  reading  readme  realtime  reasonml  rebol  recipes  recruiters  reddit  refactoring  reference  references  regex  regexp  regular  regularexpression  regularexpressions  release  religion  reml  remote  research  resources  rest  restful  restructuredtext  reviews  rewrite  richhickey  river4  riverofnews  roots  rpc  rss  ruby  rust  sabermetric  salt  scala  scalability  scaling  scheduling  schema  scheme  science  scm  scope  scraping  screencast  script  scripting  scripts  scroll  scrum  search  security  selenium  Selenium2  semantics  seo  server  service  sexism  sharing  shell  shit  shuttle  sicp  signatures  simula  sitepoint  slides  smarty  smashing  sms  snippet  snippets  soap  soccer  social  socialmedia  socialnetworking  socialsoftware  society  software  softwareengineering  software_engineering  solid  sorting  source  sourcecontrol  sourceforge  space  spam  spark  specification  speed  sphinx  sports  sql  sqlserver  squareroot  srp  ssms  stackoverflow  stacktrace  standard  standards  stanford  startup  startups  state  statemachine  statistics  stats  steve  storage  strategy  stream  study  style  styleguide  SubGit  sublime  sublimetext  submodule  submodules  subversion  sucks  summer  svn  svn:external  swing  swt  symbol  symbols  symfony  synchronisation  syntax  syntaxhighlighting  sysadmin  tags  talent  talk  talking  talks  tdd  teaching  teams  tech  technology  telegram  telldontask  template  templates  templating  tensorflow  terminal  test  testing  tests  text  text-editor  texteditor  texteditors  textmate  themes  theory  this  threaded  threading  time  timeline  timer  timeseries  timetracking  timing  tips  tools  toread  training  travel  tree  tricks  tty  tuning  turing  tutorials  twitter  typography  ui  uk  unicode  unit  unittesting  unix  unpack  US  usability  users  utf8  utilities  ux  vagrant  validation  value  vcs  vector  version  versioncontrol  versioning  version_control  via:popular  video  videogames  videolectures  videos  view  vim  virtualization  visual  visualisation  visualization  visuallibrary  vs  vs2010  web  web.py  web2.0  webapps  Webb  webdav  webdesign  webdev  webdevelopment  WebDriver  webkit  webprogramming  webpy  webscraping  webserver  webservice  webservices  website  web_development  web_server  whatsapp  who  wiki  wikipedia  windows  winer  wolfram  women  wordpress  wordpress-theme-development  wordpress.org  work  workflow  workflows  working  wp  wp-debug  writers  writing  xdebug  xmas  xml  xp  xss  yahoo  yaml  your  yui  zencoding  _check 

Copy this bookmark: