1. 4

    I get tired and drained: As a bit of an introvert, I find extended periods of pairing extremely draining. I don’t think introversion is really factored in when the XP crew advocate for full-time pair programming.

    This is my experience as well. To exacerbate the point, I’ve found that some people believe that being introverted is a problem, and a behavior that needs to be “corrected”. I don’t know how recent the idea of introversion vs extroversion being expressed in terms of when your energy is being drained came about, but it seems more known today. (And to reiterate, this doesn’t mean introverts are naturally anti-collaboration. This just means other forms of collaboration need to be considered to be mutually beneficial for various personality types.)

      1. 4

        I’m working my way through Think Stats.

        1. 4

          Nice!

          I was just digging into this myself: https://github.com/jeremyheiler/regex

          1. 33

            What kind of bothers me about this series of back and forths is so many of them are about syntax stuff and not about semantics. C has a lot of semantics we shouldn’t copy, the syntax is a less interesting problem, IMO.

            1. 14

              I agree this seems pretty petty. For me the reason to be militantly anti-C is that the current culture of unsafe languages for high performance work is what is giving governments and organized crime the keys to every single one of our servers, cars, toasters, web browsers, voting machines etc… We have an obligation as engineers to build things that are not going to turn into weapons against the people who trust us to build the infrastructure that they depend on. Governments are starting to push their limits and nation states are dramatically escalating their malicious use of our machines. Exploits don’t get fixed, they get sold and hoarded and used against activists. It’s reprehensible that we are standing by with our hands in the air saying “I can write safe C, aren’t I macho?” while our infrastructure is being weaponized at a rapidly increasing rate. The security industry is about stunt hacking, feeling like you’re an early 90s hacker, and churning out snake oil as fast as possible. I can’t wait for the eventual fruits of the cyber grand challenge and languages like rust to drive that vacuous industry out of the technology space after they have abused our paranoia for so much blood money with vanishingly few real contributions to our security. They don’t make technology, they make magic totems against boogeymen that don’t work and can’t work. As engineers we significantly shape the armatures upon which politics has to operate within, and we’re making the world a shittier place by not fighting for memory safety in high performance widely deployed infrastructure.

              1. 7

                to be fair; the author of the original post is mostly concerned with language usability and ergonomics, thus syntax is actually of some importance.

                this is not to say that you’re wrong, C sins badly in both domains, but I don’t think that a focus on syntax is inappropriate, given Eevee’s concerns.

                1. 3

                  The author of the original post has been thinking about making a language, in my understanding, and so musing about syntax is very useful.

                  1. 4

                    the syntax is a less interesting problem

                    I want to agree with this on principle, but in practice a bad syntax can make the editing experience suck. I’m pretty fed up with haskell-mode’s poor indentation support, and I hate how in Python you can’t copy/paste code without fiddling with the indentation. And in every non-Lispy language I miss structural editing a-la paredit.

                    I think as long as the syntax is LL(1) the differences are mostly personal preference.

                    1. 2

                      I’ve always thought we should leave the syntax flexible on a per-user basis while standardizing on the semantics. There could be a default syntax that people can understand in general. The main idea, though, is the syntax is a skin on the semantics like the skins on media players, browsers, etc. They’re pluggable in the editors where the language looks however you wanted it to no matter whose library you used. Some semantics might even be converted if it’s something simple to make an equivalent for. Recursion to iteration is potentially one of those.

                      1. 1

                        So, syntax macros?

                        1. 1

                          It can be that simple. Otherwise IDE support implemented however they choose.

                    1. 2

                      It would be very neat if the author included links to libraries that implemented this model of regex.

                      1. 4

                        The author’s library re2 uses this technique.

                        1. 3

                          And so does Go’s regexp library from an overlapping set of the same authors

                          1. 2

                            Rust’s implementation is also based on RE2: https://doc.rust-lang.org/regex/regex/index.html

                      1. 4

                        I’m working on improving ponylang-mode, an Emacs major mode for Pony.

                        1. 2

                          As someone who is interested in languages and compilers, this writeup has inspired me to consider JavaScript-related projects as something I would work on. I’ve always known that there is a wealth of interesting stuff happening, but my lack of interest in front-end development held me back.

                          1. 2

                            I plan on attending. I went last year, and I agree; It was a great conference.

                            1. 5

                              What about the costs of SSL certificates? This isn’t going to bode well, especially for those who want to use more than one level of subdomains.

                              1. 7

                                The was a link in the comments to Lets Encrypt a project to provide free, automated, Certificate Authority - coming some time this year…

                                1. 6

                                  For how many years now have people been talking about a free, non-profit CA? It’s easy to make claims about how simple and automatic this will be when it doesn’t exist yet. It seems like jumping the gun to make this deprecation decision based on the predicted future availability of something that might or might not actually materialize and might or might not be as useful and well-implemented as promised.

                                  1. 3

                                    I would bet that Mozilla know at least a little about the CA jobs and if someone can do it, there is a lot of chance that them will do. Moreover we will see how it will be implemented just in a few month ahead.

                              1. 3

                                Basic Auth lacks a time nounce to prevent replay attacks, but the alternative is not OAuth which is more complicated as the problem it solves is Aut{oriz,henticat}ing I’m user A in C to B without sharing credentials

                                1. 4

                                  Other than not being standardized, is there something that prevents an API from requiring an extra nonce header?

                                  1. 0

                                    On the weekend I’m often seen driving around in my Oriz Henticat, it’s a V8.

                                  1. 9

                                    I’m all for using established solutions and not re-inventing the wheel, but I think it’s solving a different problem than OAuth set out to. What if I want to write a REST API to be used by untrusted clients? I’m not shoving a secret into my client side JS app.

                                    Also last I checked Basic Auth has no good standard way to un-authenticate.

                                    1. 4

                                      Completely true, but - imo - oauth shouldn’t be considered the default for api authentication.

                                      You’re fully right about unauthenticating; only way known to me is the hackish unauthentication with wrong credentials.

                                      1. 5

                                        What do you mean by “unauthenticate”? I am under the impression that you have to pass the credentials with every request. Or are you talking about how browsers cache the credentials for you?

                                        1. 3

                                          The latter; since it’s basically a stateless affair; should’ve been more clear on this.

                                          Would be nice if browsers would offer a built in logout button.

                                          1. 2

                                            I agree. Though, do browsers cache basic auth credentials when making API calls from JavaScript? If not, I feel like this is not a general issue, but a UX one.

                                            1. 2

                                              Afaik it is purely a ux issue: js initiated requests require the authorization header on every request.

                                      2. 1

                                        You don’t have to shove your secret in the client side, but you could shove your public key.

                                      1. 2

                                        This was the first paper we read in our private reading group that was the precursor to Papers We Love. I highly recommend it.

                                        1. 13

                                          I’m not sure I like putting the nav at the top like that. It means every time I read a page, the first thing I have to do is page forward. It also seems to put the nav more “out of reach” when I get to the end and want to go somewhere else. Sure, I usually have to scroll with the side nav anyway, but it feels like I’m scanning within the side nav; it doesn’t feel like I’m leaping to another part of the page. When it’s not on the page, it feels more detached.

                                          1. 5

                                            In that particular example of documentation too, it seems very likely that one would want to be jumping around a lot and hence having an always-visible ToC would be useful.

                                            1. 2

                                              As much as I’ve been hating on floating top bars lately, having something simple with a drop down for the nav might be nice in that situation.

                                              1. 8

                                                The ginormous top bars which then try to fold up into smaller versions have a tendency to break, among other obnoxious behaviors. But I’ve rarely been bothered by fixed size absolute divs that float above the page.

                                                The folding header seems like a sad skeumorphic newspaper headline. Interfaces that simply float over content seem much more futuristic.

                                                Perhaps nothing is worse than janky sidebars which use JavaScript to reposition themselves, but never in sync with scrolling.

                                            1. 8

                                              or the wait a year and target the first Perl 6 language release

                                              uh huh.

                                              1. 3

                                                If you missed it, Larry announced at FOSDEM that beta will be out this year, for Christmas.

                                              1. 3

                                                Are there any resources to point to for managing a single company-wide repository?

                                                1. 3

                                                  I plan is to dig into (again) the C Socket API. I’m not sure what I will build yet, maybe something for IRC.

                                                  Last week I read “Ethernet: Distributed Packet Switching for Local Computer Networks”. It was interesting to get a historical perspective on what went into deciding the feature set for Ethernet.

                                                  http://research.microsoft.com/en-us/um/people/pcosta/cn_slides/metcalfe76ethernet.pdf

                                                  1. 2

                                                    This is actually pretty decent / useful: http://beej.us/guide/bgnet/ … I’d learned sockets before this was written, but I find it useful still when I have questions or want to see some of the newer APIs.

                                                    1. 1

                                                      Thank you!

                                                  1. 1

                                                    I recently noticed this for the “.google” gTLD. https://twitter.com/jeremyheiler/status/569636501514022913

                                                    If I’m reading the post correctly, the author is guessing that someone else owns the gTLD? From what I understand, that’s not what 127.0.53.53 is used for. Instead, it’s being used–for now–to help others figure out sooner that these domains may collide with their internal networks. So, any “malicious” activity would be coming from within.

                                                    1. 5

                                                      This past weekend I started reading An Introduction to Computer Networks by Peter L Dordal. This first chapter is an overview of the various layers and how they interact with each other. I’m in the process of reading the second chapter, which dives into Ethernet.

                                                      I am just beginning to explore all things networking, so I’m not currently working on a project. I did come across Mininet, so I may dive into that as I start looking for things to hack on.

                                                      1. 6

                                                        I am learning how computers talk to each other. Why? Because I don’t really know how it works. I’ve been interested in networking in the past, but I’ve mostly focused my personal learning on programming languages. That sounds a lot more interesting than it really is, as I don’t think I know enough about the topic at this point to say that that was my “field of study”. Nonetheless, it was my interest and I want to move on. I’m starting with the basics of networking and building up from there. I’ve been doing a lot of reading, and am looking for a good place to dive in. Any suggestions would be appreciated.

                                                        1. 2

                                                          I found it really beneficial to use packet and flow capture utilities to understand the structure and sequence of the network stack. Look at IPFW on Mac/FreeBSD, you can even redirect certain flows through user space and back again which allows you to write little scripts that analyze or transmogrify the packet stream. Wireshark supports writing scripts in Lua.

                                                          1. 1

                                                            Thanks!