Modules in C++, Roundup

More or less archaeological order; newer works on top, older works down below.

Proposals

References

  • Bjarne Stoustrup; C++ FAQ; current, last update 2014-10?.
  • Stefanus Du Toit; Workiing Draft, Standard for Programming Language C++; Document N3797; ISO/IEC JTC1/SC22/WG21; 2013-10-13; 1366 pages.
    Also: draft source.
  • International Standard ISO/IEC 14882 Programming Languages — C++; International Organization for Standards; 3rd edition; 2011; paywalled.
  • Margaret E. Ellis, Bjarne Stroustrup; The Annotated C++ Reference Manual; Addison-Wesley; 1990.

Scalable C++ Original Location Disaggregation (SCOLD) from 2004

Wendell Baker; Scalable C++ Original Location Disaggregation (SCOLD); 2004-04-12.

  • language definition
  • prototype code.

Overview

  • Version v0.1, circa 2004-Q2.
  • Five phases of the C++ declarations
    • forward declarations; e.g. class name declarations with incomplete types.
    • complete declarations; e.g. with class definitions.
    • inline definitions; e.g. inline functions, inline function templates
    • outline definition declarations; e.g. outline templates
    • outline definitions; e.g. are strong definitions subject the One Definition Rule (ODR)
  • Codifies existing reasonable-to-best practice in library physical design.
  • Blends in with the existing cut & paste methodology of C Pre–Processor language capability of C++98, C++03 [and now C++11].

Grammar

translation_unit ::= stanza-list

stanza ::= declaration-list code-body

declaration ::= provide | require | include

code-body ::= forward declarations { ...arbitrary C++ Code... }
code-body ::= complete declarations { ...arbitrary C++ Code... }
code-body ::= inline definitions { ...arbitrary C++ Code... }
code-body ::= outline definition declarations { ...arbitrary C++ Code... }
code-body ::= outline definitions { ...arbitrary C++ Code... }

Semantics

  • Semantics defined in terms of the existing #include model of a C++ translation unit.
  • The stanzas necessarily have a partial order defined by the C++ Standard; i.e.the stanzas within a translation unit must be ordered as:
    • forward declarations precede complete declarations
    • which precede inline definitions
    • which precede outline definition declarations
    • which precede outline definitions
  • Reminder: consider a multiple translation unit application.
  • The declarations establish a partial order among the code bodies from other translation units.
  • The stanzas forward declaration through outline definition declarations must be presented for the outline definitions section of any translation uint.
  • There is a natural “zipper-like” reassembly of the interfaces via idempotent recursive #include-type operations (think #pragma once).

Implementation

For module mymodule.scpp as a translation unit:

  • the forward declarations stanza becomes mymodule.fpp
  • the complete declarations stanza becomes mymodule.hpp
    • which includes mymodule.fpp
    • and #includes hpp phases from other translation units mentioned as  requires
  • the inline definitions stanza becomes mymodule.ipp
    • which includes mymodule.hpp
    • and #includes ipp phases from other translation units mentioned as  requires
  • the outline definition declarations stanza becomes mymodule.tpp
    • which includes mymodule.ipp
    • and #includes tpp phases from other translation units mentioned as  requires
  • the complete declarations stanza becomes mymodule.cpp
    • which includes mymodule.tpp
    • and #includes the tpp phases from any other translation units’ interfaces that it requires.

Example

provide <iostream>;
provide "myclass.h";
provide myclass;
provide mynamespace::myclass;
forward declarations {
  class myclass;
  namespace mynamespace {
    class myclass;
  }
}

require std::auto_ptr;
require std::string;
complete declarations {
#include <iostream>
#include "myclass.h"
  class myclass {
    int save;
  public:
    myclass();
    inline int value() const;
  };
  namespace mynamespace {
    class myclass {
    public:
      myclass(std::string const &);
      template<typename TYPE> void set(TYPE);
    };
  }
}

inline declarations {
   inline int myclass::value() const {
     return save;
  }
}

outline definition declarations {
  template<typename TYPE> void myclass::set(TYPE x) {
    ...etc...
  }
}

outline definitions {
  mynamespace::myclass::myclass(std::string const &value) {
    ...etc...
  }
}

Let’s Encrypt

Let’s Encrypt

Internet Security Research Group (ISRG)

Sponsors

  • Mozilla
  • Akamai
  • Cisco
  • Electronic Frontier Foundation (EFF)
  • IdentTrust

Mentions

Outreach

Steps

  1. Your Public Key exists (and is public)
  2. [Automated] proof of domain ownership
    1. a DNS record in your domain
    2. a URI on your server in the domain
  3. Client to Let’s Encrypt (LE)
    1. Client requests service from LE
    2. LE responds with a nonce to be signed
    3. Client is validated
  4. Client requests a Certificate
    1. Client initiates a PKCS#10 Certificate Signing Request
    2. …etc…

How It Works

$ sudo apt-get install lets-encrypt
$ lets-encrypt example.com

Via: backfill

Donna Rockwell

Bio head shot - Donna_2.jpg
Donna Rockwell

Practice

  • New York, NY
  • Farmington Hills, MI

Specialties

  • Celebrity Mental Health
  • Mindfulness

Biographical ref, ref

  • Associate Faculty at the Michigan School of Professional Psychology (MiSPP).
  • Bachelor of Arts in Language and Communication from Hampshire College.
  • Master of Arts in Journalism and Public Affairs from American University.
  • Alumna of the MA and PsyD programs from the Center for Humanistic Studies.
  • Staff psychologist at the Center for Creative Living, Royal Oak, MI.
  • She is a former TV journalist, covering Capitol Hill & the White House for CNN, WRC-TV in Washington DC.
  • Attended for ~15 years ref
    • Shambhala International meditation training
    • Harvard University Continuing Program in Meditation and Psychotherapy

Concepts & Curricula

  • The Mindfulness Initiative of Mindfulness and Psychotherapy, a curriculum at the Michigan School of Professional Psychology (MiSPP).
  • Mindfulness, Meditation and Health at Graduate School of Mind-Body Medicine., Saybrook University.

Research

Venues
  • Journal of Phenomenological Psychology
  • The Esalen Institute.
  • American Psychological Association.
Academe
  • Ready for the Close-up: Celebrity Experience and the Phenomenology of Fame; Chapter in: Kylo-Patrick R. Hart  (editor); Film and Television Stardom; Cambridge Scholars Publishing; 2008-01-08; 390 pages; kindle: no, paper: $65+SHT, $55+SHT.
Vulgar

Outreach

Mentions

Citations Used

Mindfulness in Everyday Life: A Female Call to Arms to Be Yourself; In the celebratory output of The Third Metric: Redefining Success Beyond Money & Power, a women’s conference; In The Huffington Post; 2013-11-06.

Mindfulness in Everyday Life: Personal Power — Believe in the Power Within and Use It; In the celebratory output of The Third Metric: Redefining Success Beyond Money & Power, a women’s conference; In The Huffington Post; 2013-06-23.

Space and T houghts; In The New Existentialists (magazine), of Saybrook University; 2012-05-07

Existentialism and the DSM-5: Humanizing Mental Health; In The New Existentialists (magazine), of Saybrook University; 2012-01-26

  • A. Corbett & C. Ballard. (2012). Antipsychotics and mortality in dementia. American Journal of Psychiatry (169)1, 7-9.
  • M. Moran. (2011-12-16). Senator’s proposal on antipsychotics generates AMA opposition. Psychiatric News (46)24, 1b-28, American Psychiatric Association.
  • B. Wampold. (2001). The Great Psychotherapy Debate: Models, methods, and findings. Mahwah, NJ: Routledge.
  • J. Wolfe. (2012-01-06). APA cites a need to use practice guidelines when prescribing antipsychotics in nursing homes and foster-care facilities. Psychiatric News (47)1, 7-7, American Psychiatric Association.

Actualities

Bio head shot - Donna_2.jpgDonna RockwellMiSPP headshot.jpgDonna RockwellDonna Rockwell's picture

Proxygen by Facebook, a C++ HTTP Framework

Daniel Sommermann, Alan Frindell (Facebook); Introducing Proxygen, Facebook’s C++ HTTP Framework; In Their Blog; 2014-11-09.

Mentions

Assessment

Summary
Language LOC App LOC Test LOC
am 695 572 123
c++ 47,712 35,075 12,637
py 163 163 0
sh 84 84 0
total 48,654 35,894 12,760

Language (C++)

  • C++11
  • In-class initializers
  • Uniform Initialization
    • brace-enclosed initializers
    • in-class initializers
  • move semantics
  • namespaces
  • const
  • return value optimization (functions returning containers)
  • seems formatted for 80 character teletype screens.
  • std::unique_ptr
  • bool as single bitfield
  • range for loop
  • auto
  • std::string in lieu of char * (sometimes)
  • std::vector in lieu of arrays (sometimes)
  • attributes
    • final
    • ifunc (indirect function, per ELF)
    • noexcept
    • override
    • __attribute__((constructor))
  • static_assert
  • std::function
  • std::thread
  • std::chrono (seconds, milliseconds)

Dependencies

Runtime
Buildtime
  • Python
  • Ruby
  • gperf

Physical Design

  • (outline) function definitions separated from the function declaration (mostly)
  • roughly one class per file
  • Suffixes
    • *.hpp
    • *.cpp

Build System

  • autotools (automake, autoconf)
  • doxygen

Portability

  • Ubuntu

Promotion

Via: backfill

Actualities

CoreProxygenArchitecture.png

Inventory

LOC File
264 ./proxygen/proxygen/configure.ac
27 ./proxygen/proxygen/httpserver/Makefile.am
10 ./proxygen/proxygen/httpserver/samples/echo/Makefile.am
1 ./proxygen/proxygen/httpserver/samples/Makefile.am
1 ./proxygen/proxygen/lib/http/codec/Makefile.am
135 ./proxygen/proxygen/lib/http/Makefile.am
1 ./proxygen/proxygen/lib/http/session/Makefile.am
13 ./proxygen/proxygen/lib/Makefile.am
29 ./proxygen/proxygen/lib/services/Makefile.am
28 ./proxygen/proxygen/lib/ssl/Makefile.am
62 ./proxygen/proxygen/lib/utils/Makefile.am
1 ./proxygen/proxygen/Makefile.am
2381 ./proxygen/proxygen/external/http_parser/http_parser_cpp.cpp
319 ./proxygen/proxygen/external/http_parser/http_parser.h
3142 ./proxygen/proxygen/external/http_parser/test.c
59 ./proxygen/proxygen/httpserver/filters/DirectResponseHandler.h
125 ./proxygen/proxygen/httpserver/Filters.h
106 ./proxygen/proxygen/httpserver/filters/RejectConnectFilter.h
92 ./proxygen/proxygen/httpserver/HTTPServerAcceptor.cpp
48 ./proxygen/proxygen/httpserver/HTTPServerAcceptor.h
205 ./proxygen/proxygen/httpserver/HTTPServer.cpp
142 ./proxygen/proxygen/httpserver/HTTPServer.h
86 ./proxygen/proxygen/httpserver/HTTPServerOptions.h
78 ./proxygen/proxygen/httpserver/Mocks.h
186 ./proxygen/proxygen/httpserver/RequestHandlerAdaptor.cpp
74 ./proxygen/proxygen/httpserver/RequestHandlerAdaptor.h
76 ./proxygen/proxygen/httpserver/RequestHandlerFactory.h
99 ./proxygen/proxygen/httpserver/RequestHandler.h
198 ./proxygen/proxygen/httpserver/ResponseBuilder.h
84 ./proxygen/proxygen/httpserver/ResponseHandler.h
56 ./proxygen/proxygen/httpserver/samples/echo/EchoHandler.cpp
47 ./proxygen/proxygen/httpserver/samples/echo/EchoHandler.h
87 ./proxygen/proxygen/httpserver/samples/echo/EchoServer.cpp
41 ./proxygen/proxygen/httpserver/samples/echo/EchoStats.h
192 ./proxygen/proxygen/httpserver/ScopedHTTPServer.h
36 ./proxygen/proxygen/httpserver/SignalHandler.cpp
37 ./proxygen/proxygen/httpserver/SignalHandler.h
218 ./proxygen/proxygen/lib/http/codec/CodecDictionaries.h
92 ./proxygen/proxygen/lib/http/codec/CodecProtocol.cpp
51 ./proxygen/proxygen/lib/http/codec/CodecProtocol.h
409 ./proxygen/proxygen/lib/http/codec/compress/GzipHeaderCodec.cpp
96 ./proxygen/proxygen/lib/http/codec/compress/GzipHeaderCodec.h
128 ./proxygen/proxygen/lib/http/codec/compress/HeaderCodec.h
46 ./proxygen/proxygen/lib/http/codec/compress/Header.h
61 ./proxygen/proxygen/lib/http/codec/compress/HeaderPiece.h
210 ./proxygen/proxygen/lib/http/codec/compress/HeaderTable.cpp
221 ./proxygen/proxygen/lib/http/codec/compress/HeaderTable.h
105 ./proxygen/proxygen/lib/http/codec/compress/HPACKCodec.cpp
56 ./proxygen/proxygen/lib/http/codec/compress/HPACKCodec.h
50 ./proxygen/proxygen/lib/http/codec/compress/HPACKConstants.h
59 ./proxygen/proxygen/lib/http/codec/compress/HPACKContext.cpp
58 ./proxygen/proxygen/lib/http/codec/compress/HPACKContext.h
105 ./proxygen/proxygen/lib/http/codec/compress/HPACKDecodeBuffer.cpp
84 ./proxygen/proxygen/lib/http/codec/compress/HPACKDecodeBuffer.h
167 ./proxygen/proxygen/lib/http/codec/compress/HPACKDecoder.cpp
78 ./proxygen/proxygen/lib/http/codec/compress/HPACKDecoder.h
112 ./proxygen/proxygen/lib/http/codec/compress/HPACKEncodeBuffer.cpp
94 ./proxygen/proxygen/lib/http/codec/compress/HPACKEncodeBuffer.h
155 ./proxygen/proxygen/lib/http/codec/compress/HPACKEncoder.cpp
75 ./proxygen/proxygen/lib/http/codec/compress/HPACKEncoder.h
36 ./proxygen/proxygen/lib/http/codec/compress/HPACKHeader.cpp
81 ./proxygen/proxygen/lib/http/codec/compress/HPACKHeader.h
345 ./proxygen/proxygen/lib/http/codec/compress/Huffman.cpp
138 ./proxygen/proxygen/lib/http/codec/compress/Huffman.h
158 ./proxygen/proxygen/lib/http/codec/compress/Logging.cpp
39 ./proxygen/proxygen/lib/http/codec/compress/Logging.h
111 ./proxygen/proxygen/lib/http/codec/compress/StaticHeaderTable.cpp
24 ./proxygen/proxygen/lib/http/codec/compress/StaticHeaderTable.h
39 ./proxygen/proxygen/lib/http/codec/ErrorCode.cpp
52 ./proxygen/proxygen/lib/http/codec/ErrorCode.h
124 ./proxygen/proxygen/lib/http/codec/FlowControlFilter.cpp
97 ./proxygen/proxygen/lib/http/codec/FlowControlFilter.h
1071 ./proxygen/proxygen/lib/http/codec/HTTP1xCodec.cpp
196 ./proxygen/proxygen/lib/http/codec/HTTP1xCodec.h
49 ./proxygen/proxygen/lib/http/codec/HTTPChecks.cpp
38 ./proxygen/proxygen/lib/http/codec/HTTPChecks.h
263 ./proxygen/proxygen/lib/http/codec/HTTPCodecFilter.cpp
175 ./proxygen/proxygen/lib/http/codec/HTTPCodecFilter.h
468 ./proxygen/proxygen/lib/http/codec/HTTPCodec.h
74 ./proxygen/proxygen/lib/http/codec/HTTPSettings.cpp
71 ./proxygen/proxygen/lib/http/codec/HTTPSettings.h
16 ./proxygen/proxygen/lib/http/codec/SettingsId.cpp
44 ./proxygen/proxygen/lib/http/codec/SettingsId.h
1584 ./proxygen/proxygen/lib/http/codec/SPDYCodec.cpp
378 ./proxygen/proxygen/lib/http/codec/SPDYCodec.h
163 ./proxygen/proxygen/lib/http/codec/SPDYConstants.cpp
130 ./proxygen/proxygen/lib/http/codec/SPDYConstants.h
81 ./proxygen/proxygen/lib/http/codec/SPDYUtil.cpp
144 ./proxygen/proxygen/lib/http/codec/SPDYUtil.h
16 ./proxygen/proxygen/lib/http/codec/SPDYVersion.h
47 ./proxygen/proxygen/lib/http/codec/SPDYVersionSettings.h
33 ./proxygen/proxygen/lib/http/codec/TransportDirection.cpp
28 ./proxygen/proxygen/lib/http/codec/TransportDirection.h
61 ./proxygen/proxygen/lib/http/HTTPCommonHeaders.template.h
167 ./proxygen/proxygen/lib/http/HTTPConnector.cpp
152 ./proxygen/proxygen/lib/http/HTTPConnector.h
32 ./proxygen/proxygen/lib/http/HTTPConstants.cpp
67 ./proxygen/proxygen/lib/http/HTTPConstants.h
31 ./proxygen/proxygen/lib/http/HTTPException.cpp
169 ./proxygen/proxygen/lib/http/HTTPException.h
308 ./proxygen/proxygen/lib/http/HTTPHeaders.cpp
423 ./proxygen/proxygen/lib/http/HTTPHeaders.h
34 ./proxygen/proxygen/lib/http/HTTPHeaderSize.h
831 ./proxygen/proxygen/lib/http/HTTPMessage.cpp
98 ./proxygen/proxygen/lib/http/HTTPMessageFilters.h
724 ./proxygen/proxygen/lib/http/HTTPMessage.h
45 ./proxygen/proxygen/lib/http/HTTPMethod.cpp
59 ./proxygen/proxygen/lib/http/HTTPMethod.h
34 ./proxygen/proxygen/lib/http/ProxygenErrorEnum.cpp
73 ./proxygen/proxygen/lib/http/ProxygenErrorEnum.h
81 ./proxygen/proxygen/lib/http/RFC2616.cpp
73 ./proxygen/proxygen/lib/http/RFC2616.h
23 ./proxygen/proxygen/lib/http/session/AckLatencyEvent.h
33 ./proxygen/proxygen/lib/http/session/ByteEvents.cpp
105 ./proxygen/proxygen/lib/http/session/ByteEvents.h
171 ./proxygen/proxygen/lib/http/session/ByteEventTracker.cpp
85 ./proxygen/proxygen/lib/http/session/ByteEventTracker.h
67 ./proxygen/proxygen/lib/http/session/CodecErrorResponseHandler.cpp
42 ./proxygen/proxygen/lib/http/session/CodecErrorResponseHandler.h
122 ./proxygen/proxygen/lib/http/session/HTTPDirectResponseHandler.cpp
52 ./proxygen/proxygen/lib/http/session/HTTPDirectResponseHandler.h
89 ./proxygen/proxygen/lib/http/session/HTTPDownstreamSession.cpp
73 ./proxygen/proxygen/lib/http/session/HTTPDownstreamSession.h
34 ./proxygen/proxygen/lib/http/session/HTTPErrorPage.cpp
70 ./proxygen/proxygen/lib/http/session/HTTPErrorPage.h
47 ./proxygen/proxygen/lib/http/session/HTTPEvent.cpp
126 ./proxygen/proxygen/lib/http/session/HTTPEvent.h
102 ./proxygen/proxygen/lib/http/session/HTTPSessionAcceptor.cpp
141 ./proxygen/proxygen/lib/http/session/HTTPSessionAcceptor.h
71 ./proxygen/proxygen/lib/http/session/HTTPSessionController.h
2002 ./proxygen/proxygen/lib/http/session/HTTPSession.cpp
832 ./proxygen/proxygen/lib/http/session/HTTPSession.h
25 ./proxygen/proxygen/lib/http/session/HTTPSessionStats.h
933 ./proxygen/proxygen/lib/http/session/HTTPTransaction.cpp
118 ./proxygen/proxygen/lib/http/session/HTTPTransactionEgressSM.cpp
71 ./proxygen/proxygen/lib/http/session/HTTPTransactionEgressSM.h
1155 ./proxygen/proxygen/lib/http/session/HTTPTransaction.h
134 ./proxygen/proxygen/lib/http/session/HTTPTransactionIngressSM.cpp
73 ./proxygen/proxygen/lib/http/session/HTTPTransactionIngressSM.h
116 ./proxygen/proxygen/lib/http/session/HTTPUpstreamSession.cpp
95 ./proxygen/proxygen/lib/http/session/HTTPUpstreamSession.h
66 ./proxygen/proxygen/lib/http/session/SimpleController.cpp
66 ./proxygen/proxygen/lib/http/session/SimpleController.h
162 ./proxygen/proxygen/lib/http/session/TransportFilter.cpp
124 ./proxygen/proxygen/lib/http/session/TransportFilter.h
27 ./proxygen/proxygen/lib/http/session/TTLBAStats.h
96 ./proxygen/proxygen/lib/http/Window.cpp
84 ./proxygen/proxygen/lib/http/Window.h
59 ./proxygen/proxygen/lib/services/AcceptorConfiguration.h
444 ./proxygen/proxygen/lib/services/Acceptor.cpp
342 ./proxygen/proxygen/lib/services/Acceptor.h
56 ./proxygen/proxygen/lib/services/ConnectionCounter.h
54 ./proxygen/proxygen/lib/services/HTTPAcceptor.h
45 ./proxygen/proxygen/lib/services/LoadShedConfiguration.cpp
109 ./proxygen/proxygen/lib/services/LoadShedConfiguration.h
60 ./proxygen/proxygen/lib/services/NetworkAddress.h
40 ./proxygen/proxygen/lib/services/RequestWorker.cpp
89 ./proxygen/proxygen/lib/services/RequestWorker.h
126 ./proxygen/proxygen/lib/services/ServerSocketConfig.h
58 ./proxygen/proxygen/lib/services/ServiceConfiguration.h
33 ./proxygen/proxygen/lib/services/Service.cpp
137 ./proxygen/proxygen/lib/services/Service.h
102 ./proxygen/proxygen/lib/services/ServiceWorker.h
66 ./proxygen/proxygen/lib/services/TransportInfo.cpp
279 ./proxygen/proxygen/lib/services/TransportInfo.h
160 ./proxygen/proxygen/lib/services/WorkerThread.cpp
129 ./proxygen/proxygen/lib/services/WorkerThread.h
24 ./proxygen/proxygen/lib/ssl/ClientHelloExtStats.h
53 ./proxygen/proxygen/lib/ssl/DHParam.h
31 ./proxygen/proxygen/lib/ssl/PasswordInFile.cpp
38 ./proxygen/proxygen/lib/ssl/PasswordInFile.h
23 ./proxygen/proxygen/lib/ssl/SSLCacheOptions.h
69 ./proxygen/proxygen/lib/ssl/SSLCacheProvider.h
95 ./proxygen/proxygen/lib/ssl/SSLContextConfig.h
654 ./proxygen/proxygen/lib/ssl/SSLContextManager.cpp
186 ./proxygen/proxygen/lib/ssl/SSLContextManager.h
354 ./proxygen/proxygen/lib/ssl/SSLSessionCacheManager.cpp
293 ./proxygen/proxygen/lib/ssl/SSLSessionCacheManager.h
42 ./proxygen/proxygen/lib/ssl/SSLStats.h
76 ./proxygen/proxygen/lib/ssl/SSLUtil.cpp
102 ./proxygen/proxygen/lib/ssl/SSLUtil.h
308 ./proxygen/proxygen/lib/ssl/TLSTicketKeyManager.cpp
198 ./proxygen/proxygen/lib/ssl/TLSTicketKeyManager.h
20 ./proxygen/proxygen/lib/ssl/TLSTicketKeySeeds.h
60 ./proxygen/proxygen/lib/utils/CobHelper.h
76 ./proxygen/proxygen/lib/utils/CryptUtil.cpp
22 ./proxygen/proxygen/lib/utils/CryptUtil.h
84 ./proxygen/proxygen/lib/utils/DestructorCheck.h
71 ./proxygen/proxygen/lib/utils/DomainNameMisc.h
34 ./proxygen/proxygen/lib/utils/Exception.cpp
46 ./proxygen/proxygen/lib/utils/Exception.h
358 ./proxygen/proxygen/lib/utils/FilterChain.h
43 ./proxygen/proxygen/lib/utils/HTTPTime.cpp
20 ./proxygen/proxygen/lib/utils/HTTPTime.h
16 ./proxygen/proxygen/lib/utils/NullTraceEventObserver.cpp
23 ./proxygen/proxygen/lib/utils/NullTraceEventObserver.h
159 ./proxygen/proxygen/lib/utils/ParseURL.cpp
112 ./proxygen/proxygen/lib/utils/ParseURL.h
242 ./proxygen/proxygen/lib/utils/Result.h
38 ./proxygen/proxygen/lib/utils/SocketOptions.cpp
24 ./proxygen/proxygen/lib/utils/SocketOptions.h
46 ./proxygen/proxygen/lib/utils/StateMachine.h
37 ./proxygen/proxygen/lib/utils/TestUtils.h
128 ./proxygen/proxygen/lib/utils/Time.h
32 ./proxygen/proxygen/lib/utils/TraceEventContext.h
130 ./proxygen/proxygen/lib/utils/TraceEvent.cpp
139 ./proxygen/proxygen/lib/utils/TraceEvent.h
24 ./proxygen/proxygen/lib/utils/TraceEventObserver.h
24 ./proxygen/proxygen/lib/utils/UtilInl.h
163 ./proxygen/proxygen/lib/utils/gen_trace_event_constants.py
54 ./proxygen/proxygen/deps.sh
30 ./proxygen/proxygen/reinstall.sh
11 ./proxygen/proxygen/httpserver/tests/Makefile.am
21 ./proxygen/proxygen/lib/http/codec/test/Makefile.am
21 ./proxygen/proxygen/lib/http/session/test/Makefile.am
14 ./proxygen/proxygen/lib/http/test/Makefile.am
16 ./proxygen/proxygen/lib/ssl/test/Makefile.am
27 ./proxygen/proxygen/lib/test/Makefile.am
13 ./proxygen/proxygen/lib/utils/test/Makefile.am
97 ./proxygen/proxygen/httpserver/samples/echo/test/EchoHandlerTest.cpp
154 ./proxygen/proxygen/httpserver/tests/HTTPServerTest.cpp
35 ./proxygen/proxygen/lib/http/codec/compress/test/HeaderPieceTests.cpp
134 ./proxygen/proxygen/lib/http/codec/compress/test/HeaderTableTests.cpp
345 ./proxygen/proxygen/lib/http/codec/compress/test/HPACKBufferTests.cpp
283 ./proxygen/proxygen/lib/http/codec/compress/test/HPACKCodecTests.cpp
202 ./proxygen/proxygen/lib/http/codec/compress/test/HPACKContextTests.cpp
65 ./proxygen/proxygen/lib/http/codec/compress/test/HPACKHeaderTests.cpp
96 ./proxygen/proxygen/lib/http/codec/compress/test/HTTPArchive.cpp
37 ./proxygen/proxygen/lib/http/codec/compress/test/HTTPArchive.h
312 ./proxygen/proxygen/lib/http/codec/compress/test/HuffmanTests.cpp
146 ./proxygen/proxygen/lib/http/codec/compress/test/LoggingTests.cpp
212 ./proxygen/proxygen/lib/http/codec/compress/test/RFCExamplesTests.cpp
61 ./proxygen/proxygen/lib/http/codec/compress/test/TestUtil.cpp
28 ./proxygen/proxygen/lib/http/codec/compress/test/TestUtil.h
222 ./proxygen/proxygen/lib/http/codec/test/FilterTests.cpp
130 ./proxygen/proxygen/lib/http/codec/test/HTTP1xCodecTest.cpp
130 ./proxygen/proxygen/lib/http/codec/test/MockHTTPCodec.h
1228 ./proxygen/proxygen/lib/http/codec/test/SPDYCodecTest.cpp
207 ./proxygen/proxygen/lib/http/codec/test/TestUtils.cpp
237 ./proxygen/proxygen/lib/http/codec/test/TestUtils.h
226 ./proxygen/proxygen/lib/http/session/test/DownstreamTransactionTest.cpp
1367 ./proxygen/proxygen/lib/http/session/test/HTTPDownstreamSessionTest.cpp
154 ./proxygen/proxygen/lib/http/session/test/HTTPSessionAcceptorTest.cpp
226 ./proxygen/proxygen/lib/http/session/test/HTTPSessionMocks.h
71 ./proxygen/proxygen/lib/http/session/test/HTTPSessionTest.h
153 ./proxygen/proxygen/lib/http/session/test/HTTPTransactionMocks.h
169 ./proxygen/proxygen/lib/http/session/test/HTTPTransactionSMTest.cpp
1411 ./proxygen/proxygen/lib/http/session/test/HTTPUpstreamSessionTest.cpp
1368 ./proxygen/proxygen/lib/http/session/test/MockCodecDownstreamTest.cpp
41 ./proxygen/proxygen/lib/http/session/test/TestUtils.cpp
34 ./proxygen/proxygen/lib/http/session/test/TestUtils.h
463 ./proxygen/proxygen/lib/http/test/HTTPMessageTest.cpp
49 ./proxygen/proxygen/lib/http/test/MockHTTPMessageFilter.h
128 ./proxygen/proxygen/lib/http/test/RFC2616Test.cpp
124 ./proxygen/proxygen/lib/http/test/WindowTest.cpp
83 ./proxygen/proxygen/lib/services/test/AcceptorTest.cpp
278 ./proxygen/proxygen/lib/ssl/test/SSLCacheTest.cpp
88 ./proxygen/proxygen/lib/ssl/test/SSLContextManagerTest.cpp
635 ./proxygen/proxygen/lib/test/TestAsyncTransport.cpp
158 ./proxygen/proxygen/lib/test/TestAsyncTransport.h
23 ./proxygen/proxygen/lib/test/TestMain.cpp
49 ./proxygen/proxygen/lib/utils/test/CryptUtilTest.cpp
538 ./proxygen/proxygen/lib/utils/test/GenericFilterTest.cpp
54 ./proxygen/proxygen/lib/utils/test/HTTPTimeTest.cpp
42 ./proxygen/proxygen/lib/utils/test/MockTime.h
137 ./proxygen/proxygen/lib/utils/test/ParseURLTest.cpp
73 ./proxygen/proxygen/lib/utils/test/ResultBenchmark.cpp
112 ./proxygen/proxygen/lib/utils/test/ResultTest.cpp
22 ./proxygen/proxygen/lib/utils/test/UtilTest.cpp

HTTP/2 all the things! | Ilya Grigorik (Google)

Ilya Grigorik (Google); HTTP/2 all the things!; At VENUE; WHEN? (2014-10?); 47 slides <- bit.ly/1rOWzXj
Teaser: challenges, opportunities, and the exciting world ahead of us…

Mentions

Via: backfill

The Work of Byron Katie

Byron Katie, in session, Amsterdam, WHEN?

Outreach

Business

  • The Institute
  • The School
  • The Newsletters

Promotions

  • Byron Katie Just Wants You to Be Happy (an interview); Stephan Spencer; Huffington Post.; 2012-08-03.
    Stephen Spencer is founder of Netconcepts(a web marketing and web development agency founded and headquartered in Madison, Wisconsin, specializing in SEO)

    • The Work
    • <quote>Although she might never identify it as such, she is espousing a form of meta-cognition, a way of thinking about thinking. </quote>
    • The Four Questions
      1. Is it true?
      2. Can you absolutely know that it is true?
      3. How do you react – what happens – when you believe that thought?
      4. Who would you be without the thought?
    • The Turnaround
      Linguistic negation of the statements.
  • Can These Four Questions Change Your Life? (Testing the Work of Byron Katie); Caitlin Flanagan; In O Magazine(Oprah.com); 2010-05.
    • Teaser: In her darkest hour, Byron Katie—now a spiritual mentor to millions—discovered that life isn’t half as painful as we make it. With the help of four simple questions, she shows Caitlin Flanagan how to stop suffering and start getting real.
      • Witnessing by a cancer patient
      • The Four Questions
        1. Is it true?
        2. Can you absolutely know it’s true?
        3. How do you react—what happens—when you believe that thought?
        4. Who would you be without the thought?
      • The Turnaround => negate the thought
  • How a Self-Help Guru Is Born; Reporter; Allison Adato; In The Los Angeles Times; 2002-11-24.
    Teaser: Once Depressed, Overweight and Volatile, Byron Katie Awoke One Morning to the Sensation of a Cockroach Walking Across Her Foot–and Found Herself Transformed
    Mentions

    • The statements of troublesome thoughts.
    • The minimalist method of inquiry
    • The linguistic reversals
  • New Age: Four Quetsions to Inner Peace; Jeffrey Ressner; In TIME Magazine; 2000-12-11; paywalled.
    Teaser> TIME predicts the most innovative people of the 21st Century.”
  • An Interview with Byron Katie; Sunny Massad; In The Noumenon Journal; Summer 2000/2001.

Output

selected…

Summarizations

Concepts

  • Four Questions
  • The Turnaround
    • “I need to wash more” becomes “I don’t need to wash more”

Mentions

  • Harmony Books
    • Self Help
    • New Age
  • Origin in Barstow
  • Currently in Manhattan Beach CA
  • Stephen Mitchell
    • religious text translator

Biographical

Refs: Sunny Massad, Jimi Wales’ Wiki, Wikiquote.

  • Byron Kathleen Mitchell (née Reid).
  • born 1942-12-06.
  • 1st Marriage
    • 14 years
    • divorced
    • three children
  • 2nd Marriage
    • Stephon Mitchell
    • 1980 or so (“for twenty years,” uttered in 2000 or 2001 cite)
    • Ages: 36 and 31 and 29 (uttered in 2000 or 2001 cite)
  • The Damascene Conversion … something about
    • a Sustained Transcendant Experience (STE)
    • Premarin, 13 years, effects
    • weight
    • Halfway house, Ojai CA
    • a cockroach
    • Suzanne Segal (repudiated), U.G. Krishnamurti (affirmed)

Via: backfill

Online Ads Roll the Dice declares the Federal Trade Commission (FTC)

Latanya Sweeney (FTC); Online Ads Roll the Dice; In Their Blog; 2014-09-25.
Latanya Sweeney is Chief Technologist at the Federal Trade Commission (FTC)
Teaser: Online ads, exclusive online communities, and the potential for adverse impacts from big data analytics

tl;dr => content targeting is bad, audience targeting is insidious.

Original Sources

Big Data: A Tool for Inclusion or Exclusion?; workshop; Federal Trade Commission (FTC); 2014-09-15;

  • Proceedings & Media
  • Commentariat
  • Speakers
    • Kristin Amerling, Chief Investigative Counsel and Director of Oversight, U.S. Senate Committee on Commerce, Science and Transportation
    • Alessandro Acquisti, Associate Professor of Information Systems and Public Policy, Heinz College, Carnegie Mellon University and Co-director of the CMU Center for Behavioral Decision Research
    • Katherine Armstrong, Senior Attorney, Division of Privacy and Identity Protection, FTC
    • Solon Barocas, Postdoctoral Research Associate, Princeton University Center for Information Technology Policy
    • danah boyd, Principal Researcher, Microsoft Research, Research Assistant Professor, New York University
    • Julie Brill, Commissioner, Federal Trade Commission
    • Christopher Calabrese, Legislative Counsel, American Civil Liberties Union
    • Leonard Chanin, Partner, Morrison Foerster
    • Daniel Castro, Senior Analyst, Information Technology and Innovation Foundation
    • Pamela Dixon, Founder and Executive Director, World Privacy Forum,
    • Cynthia Dwork, Distinguished Scientist, Microsoft Research
    • Mallory Duncan, Senior Vice President and General Counsel, National Retail Federation
    • Patrick Eagan-Van Meter, Program Specialist, Division of Financial Practices, FTC
    • Jeanette Fitzgerald, General Counsel and Chief Privacy Officer, Epsilon
    • Tiffany George, Senior Attorney, Division of Privacy & Identity Protection, FTC
    • Jeremy Gillula, Staff Technologist, Electronic Frontier Foundation
    • Gene Gsell, Senior Vice President, U.S. Retail & CPG, SAS
    • Mark MacCarthy, Vice President for Public Policy, Software Information Industry Association
    • Carol Miaskoff, Assistant Legal Counsel, Office of Legal Counsel, Equal Employment Opportunity Commission
    • Montserrat Miller, Partner, Arnall Golden Gregory LLP,
    • Christopher Olsen, Assistant Director, Division of Privacy and Identity Protection, FTC
    • C. Lee Peeler, President and CEO of the Advertising Self-Regulatory Council and, Executive Vice President, National Advertising Self-Regulation, Council of Better Business Bureaus
    • Stuart Pratt, President and CEO, Consumer Data Industry Association
    • Edith Ramirez, Chairwoman, Federal Trade Commission
    • Jessica Rich, Director, Bureau of Consumer Protection, Federal Trade Commission
    • David Robinson, Principal, Robinson + Yu
    • Michael Spadea, Director, Promontory Financial Group
    • Latanya Sweeney, Chief Technologist, Federal Trade Commission
    • Peter Swire, Professor of Law and Ethics, Scheller College of Business, Georgia Institute of Technology
    • Nicol Turner-Lee, Vice President and Chief Research & Policy Officer, Minority Media and Telecommunications Council
    • Joseph Turow, Professor, Annenberg School for Communication, University of Pennsylvania
    • Christopher Wolf, Senior Partner, Hogan Lovells, Founder and Chair, Future of Privacy Forum, Chair, National Civil Rights Committee, Anti-Defamation League
    • Katherine Worthman, Senior Attorney, Division of Financial Practices, FTC
    • Jinyan Zang, Research Fellow in Technology and Data Governance, Federal Trade Commission

Big Data, a Tool for Inclusion or Exclusion?; Edith Ramirez (FTC), Solon Baracas (Princeton); Workshop Slides; 36 slides.

  • A tutorial on “data mining,” i.e. what is it?
  • Claims:
    • Data mining is always & by definition a form of discrimination, by conferring upon individuals the traits of those similar to them [it is rational, statistically-based stereotyping] (slide 9)
    • Data mining can be wrong; can be skewed, can overcount, can undercount, can mis-label, can mis-classify; there be dragons here. (middle)
    • Data mining unintentionally exacerbates existing inequality; there is no ready answer (slide 25)

Latanya Sweeney, Jinyan Zang (FTC); Digging into the Data; presentation; 30 slides.

  • Subtitles (huge subtitles)
    • If the appropriateness of an advertisement for a publication depends on the nature and character of the publication, then
      how “appropriate” might big data analytics decisions be when placing ads?
    • If the appropriateness of an advertisement for a publication depends on the nature and character of the publication, then how “appropriate” might big data analytics decisions be when placing ads?
  • Contributors
    • Krysta Dummit, undergraduate, Princeton 2015.
    • Jim Graves, graduate student, Carnegie Mellon University (CMU)
    • Paul Lisker,  undergraduate, Harvard University 2016.
    • Jinyan Zang, Oliver Wyman (a consulting boutique), Harvard University 2013.
  • Mentions
  • Promise:
    • A forthcoming paper: contact Latanya Sweeny for a copy upon release

Response

Referenced

Actualities

alt text for 3
alt text for 4
alt text for 5
alt text for 6
alt text for 7

Via: backfill

Come that day, when the algo forms into a troll

And so there I was … ordering dog fooda NUC when up pops the suggestion: