17 ms·
Show HN: Darklang
- pbiggar 7y agoHey folks, excited to finally unveil Dark and show you what we’ve been working on! We haven’t publicly shown how Dark works before, what code is like, or how deployless works. We hope you like it. We’re not fully publicly available yet (we hope you’ll excuse this Show HN when you can’t use it, sorry!), but we’re working hard to open Dark up to more people. Would love to hear your feedback. I’ll be around all day to answer questions.
- rad_gruchalski 7y agoI’m not sure if it is possible to give you any feedback on a closed source, invite only beta release but I do have a question: Where is this hosted? Asking as an EU based user with GDPR requirements.
- pbiggar 7y agoWe're not suitable for GDPR compliant applications yet. Now that we've got Dark actually working and shown to the world, we can start addressing it. Currently hosted in GCP, US west.
- rad_gruchalski 7y agoThank you.
- pixelkeet1 7y agoI'm excited to see more people get access to this! My cofounder and I rebuilt our project tracking platform on Dark and will be building the rest of our products with it. It makes building simple and makes testing 10x faster and easier for everyone on our team. I've been waiting for it to launch so that I can recommend it to more people.
- pbiggar 7y agoHey folks, excited to finally unveil Dark and show you what we’ve been working on! We haven’t publicly shown how Dark works before, what code is like, or how deployless works. We hope you like it. We’re not fully publicly available yet (we hope you’ll excuse this Show HN when you can’t use it, sorry!), but we’re working hard to open Dark up to more people. Would love to hear your feedback. I’ll be around all day to answer questions. [I originally posted over at https://news.ycombinator.com/item?id=20985429 https://news.ycombinator.com/item?id=20985429, happy to answer questions here until the mods merge them]
- steveklabnik 7y agoCongrats! I'm very interested to see how Dark progresses, and wish you all luck. I don't have time to write anything, so I'm not signing up for your beta, but I kinda wish I had the time.
- pbiggar 7y agoThanks Steve!
- jjkaufman 7y agoThe workflow that creates a new request from historical 404 requests is incredibly intuitive. I could see this helping entering the development "flow" zone when jamming on a brand new project.
- chasefoto 7y agoI’ve been using Dark for the past 12 months and I cannot say enough good things about the product and the team behind it. Here’s what I like about Dark: - Build API endpoints in a matter of seconds. As soon as the logic is written in Dark, the endpoint is publicly available on the internet - Live data: Dark has a feature called traces that shows data as it hits your endpoints. This allows you to quickly manipulate code between your front + backend - Easy interaction between third-party APIs (for me it handles logic with Stripe, Twilio, and several others) TLDR: Dark has enabled me to build a backend faster than ever before. If you’re building something new, I suggest you give it a go.
- ac360 7y agoCongrats! I have tremendous empathy for your cause. Best of luck. - Austen @ Serverless Inc.
- pbiggar 7y agoThanks Austen, that's so kind!
- fernandohur 7y agoHow does version management work with dark? Do I get access to the "raw text files"?
- pbiggar 7y agoWe combine version control, deployment and feature flags, with the intention of simplifying the three concepts into one. The idea is that you use feature flags to manage versions (my video on the blog post goes through that workflow). We haven't yet got features to support moving back to old versions (apart from undo), but we will.
- muglug 7y agoSo no GitHub integration?
- pbiggar 7y agoNot planned. We plan to expose the APIs around this so you could build something yourself that syncs to github possibly, but that's not the design for sure.
- fernandohur 7y agoThanks for the quick reply :) A few more questions # Maintenance costs & agility You're not just building a programming language, you're also building an IDE, and now a version management system (through feature flags). Each of these tasks are hard problems individually, what gives you the confidence that a small startup can build all of them? All of this while trying to make your company profitable. # Ecosystem If your language is not hosted, how do you plan on building an eco-system around it. (I know you come from a Clojure background so you've probably seen the wonders of being able to re-use Java's ecosystem).
- pbiggar 7y ago> Each of these tasks are hard problems individually, what gives you the confidence that a small startup can build all of them? All of this while trying to make your company profitable. For sure it's hard. FYI we're hiring: https://darklang.com/careers https://darklang.com/careers. The intuition is that this stuff is way easier when you don't have to support everything under the sun. The editor just needs to support the Dark language, the infra is tied to it. It reduces scope massively. > If your language is not hosted, how do you plan on building an eco-system around it. We plan to have a package manager that is easy to contribute to. I think we should be able to grow the ecosystem quite quickly.
- edro 7y agoI've been impressed with Dark -- it has the potential to make it possible to build a scalable cloud application in an afternoon and reduce application complexity. This has a number of impacts long-term, from both making existing teams more productive, to bringing less sophisticated developers to participate in application development. I highly recommend you check it out. [Disclosure - I'm an investor in the company, but my thoughts are my own.]
- quickthrower2 7y agoGood on you for the disclosure - but anything good you say is going to be ignored because of it :-)
- hkchad 7y agoUgh, why embed tiny videos that can't go full screen.
- pbiggar 7y agoApologies, we don't know why this is happening - something with medium and vimeo. The videos on our home page go fullscreen: https://darklang.com https://darklang.com.
- muglug 7y agoLooks like fullscreen from iframe embeds has been disabled by Medium.
- 52-6F-62 7y agoIn Firefox you can right-click and select Open Frame in New Window as a workaround
- mnm1 7y agoWhy should I go for a vendor locked, proprietary solution that could disappear at any moment for any critical infrastructure? Especially when it requires a proprietary language no one has ever worked in before while there are at least a half dozen tried and true tech stacks that do this exact same thing, are not proprietary, and engineers already know them?
- pbiggar 7y agoWe answer that a little in our FAQ: https://darklang.com/language#faq https://darklang.com/language#faq I don't think there are any languages that allow the same thing that Dark allows - the integration with the infrastructure is the whole point. I certainly haven't seen deployless or live values in any other stacks. Which ones are you thinking of?
- roynasser 7y agoLook very cool, and I'd love to try it out... HOWEVER....Being closed-source, backed by a single company (startup or not) is not an acceptable level of lock-in imho.. (maybe for small pocs)... What "guarantees" that you dont decide to charge far too much (or increase price mid-way)? What "guarantees" you wont kill a feature I need/my development requires? Its a very nifty thing but without having self-hosting ability and this being some sort of open project (at least partially so users have a 'way out' if the company's direction changes) I cant see using this for any non-personal project...
- jamil7 7y agoHow do I work with a team of people on something like this? How does it deal with conflicts?
- pbiggar 7y agoThe collaboration is google-docs style. You can see if you're working on the same code as someone else, see the feature flags they're building, etc, to avoid conflicts. That said, we haven't tested this with teams of more than two people, so we might need to change how this works.
- muglug 7y agoThis project represents a stark tradeoff: lose some complexity, and lose almost all control. It feels like forcing users to learn a new language is a step too far here - I can't imagine a ton of people are so eager to build slackbots that they're willing to give up all their existing tools.
- braythwayt 7y agoIt feels like HN regular are unlikely to be the ideal audience for this. Reaching for a metaphor, it's like a bunch of expert Unix users gathering around an IBM PC or Macintosh in the 1980s. It's so easy to bemoan the control we lose (a major problem given our existing workflows) and have no use for the functionality it confers (simplicity, batteries included, lack of yaks that need shaving). A really great new idea should empower millions of people completely unlike us to build software.
- pbiggar 7y agoWe do intend the HN audience to love this too. Our target audience is developers building backends. We don't expect we'll wrestle people from their Emacs, so we're definitely not targeting all possible developers today, but definitely developers.
- inimino 7y agoYou're never going to wrestle anyone who experienced more than one tech hype cycle into such a stark vendor lock-in situation.
- Stratoscope 7y agoDoes (or will) Dark have a light mode? Given the name and seeing the dark mode screenshots in the article, I wonder. This is an honest worry for an older developer like me. When you're young, your eyes can focus on just about anything. This changes as you get older. A dark mode causes your pupils to open wider, where a light mode gets them to stop down. And if your lenses are imperfect, stopping down helps make things sharper. I'm posting this as a reminder and plea to younger developers: no matter how much you love your dark modes, please consider those of us who can't focus on them, and give light modes full support too. Thanks!
- pbiggar 7y agoWe will absolutely support light mode, and we plan to deal with many other accessibility concerns (I touch on that very briefly at the end of my video). This sort of inclusivity is massively important to us. I hadn't realized Dark mode was tough for certain audiences - I'll add it to the list. (We also plan to get an a11y consultant in to make sure we get all of them)
- Stratoscope 7y agoWonderful, thank you! While I've got you, let me put in a word for proportional font support if you don't already have it. Proportional fonts are another thing that make it easier for me to read code. Would be happy to chat with you about any of this stuff - contact info is in my HN profile.
- pbiggar 7y agoThank you for the kind offer! I will definitely reach out.
- tempodox 7y agoI second your request and I'm grateful for your comprehensible and respectful way of pointing out the problem. I usually just get frustrated and angry at software that only supports dark mode.
- 7y ago
- WhitneyLand 7y agoAny chance of a link that doesn't require a medium account? Sounds interesting from the comments.
- pbiggar 7y agoHmmm, I wonder if it's a growth hack that Medium is doing. In incognito mode, i don't get the registration requirement. I'm told clicking "next" just gets you through it? Sorry about this, I think medium wasn't the best choice for the blog.
- ben174 7y agoMedium is seriously the most aggressive offender of this. Popups, Google account snooping. It's really ugly. I seriously don't know why anyone uses Medium anymore. There are plenty of better, less creepy solutions to sharing text.
- energybar 7y agoThis reminds me of Circa ~2006-2008 3Tera Applogic ... https://en.wikipedia.org/wiki/3tera https://en.wikipedia.org/wiki/3tera
- andrewnc 7y agoI got the email, and read through the post, it seems awesome. I remember the original HN post and am excited to see the progress. I have a few random questions. 1. What is the support for interop with other languages (e.g., python for machine learning, rust for low level). Or is that even a reasonable question to ask? 2. What is the pricing structure going to look like? Very exciting! This is great.
- pbiggar 7y ago1. The "foreign function interface" in Dark is HTTP. So to do machine learning, either use a service that for it, or put your ML stuff in a container with a HTTP wrapper around it. 2. We plan to charge for infrastructure, on a usage basis. If you use only a little, that should fit within the free tier.
- ZeroCool2u 7y agoWho backs your infrastructure? GCP, AWS, Azure?
- pbiggar 7y agoGCP.
- ZeroCool2u 7y agoGood to know! With the approaching FedRamp High certification across all GCP services, this seems like it could be really useful for resource constrained state/local governments and municipal services.
- vemv 7y agoFrom the landing page: > Speed of developer iteration is the single most important factor in how quickly a technology company can move. What? "Speed of developer iteration" barely makes any sense, it's poor wording. In any case that proposition seems dubious. Companies exist to please customers, not its own developers. Too often we (developers) conflate our happiness/productivity with that of the actual stakeholders. With that said, at scale one tends not to need a faster feedback loop, but greater guarantees around correctness (in logic, deployments, etc). Encouraging us to work in a mindless, iterative manner goes in the opposite direction.
- pbiggar 7y agoWe've also built tools for guarantees around correctness. My video discusses our deployless tooling, and it's also discussed in the blog post: https://medium.com/darklang/how-dark-deploys-code-in-50ms-771c6dd60671 https://medium.com/darklang/how-dark-deploys-code-in-50ms-77... We think a lot about how large teams build at scale, and while we don't support everything we'd need for large teams just yet, Dark is designed for this use case.
- vemv 7y agoI've read the blog posts in the past, and it seems quite likely that Dark could be a large conflation of concepts (as opposed to composition), which repeatedly traded off desirable properties for faster deployments. The opposite is not impossible though, I'm certainly open to see the actual offering and tradeoffs. I'm mostly expressing that Dark's marketing likely won't appeal to people who tend to question things a lot; extensive rationale is needed for us. Btw, it seems quite possible to hack a vanilla Clojure setup (Reloaded workflow, tools.deps, some CI magic) to offer deployments under 30s. I just don't see it as worth the effort, and also I actively pursue some healthy constraints (slightly slower deployments = more thought put into things).
- steveklabnik 7y ago"speed of developer iteration" is a phrase I've heard outside of Dark. Specifically, "developer iteration" is how fast you're able to iterate on ideas with your code. If you can ship stuff faster, you can iterate on your ideas faster.
- tiborsaas 7y agoI applaud the effort for the project because it's really ambitious. The delivery at this point on the other hand makes me a bit skeptical. I've watched the hello world app a few times and my impression is that it relies on lots of convention over configuration (same reason I disliked Rails). The "cards" or files on the canvas look a bit chaotic and their relations are not clear at all what thing triggers which event. The slackToken thing is confusing too. Have you tried user testing the platform with random developers, giving them a laptop with the instruction, "Here you go, this is the readme, getting started guide, go build a todo app"? I'd like to see a more detailed look of the language itself with a slower pace of explanation. Just by watching the video, Dark feels like I'm interacting with a cloud backend rather than building stuff in a programming language.
- pbiggar 7y agoWe have user tested, and a ton of people have built full apps with it. That said, you are correct that it can be a rough experience at times, which is one of the reasons we're in private beta. We wanted to show people what we were working on, warts and all. We are super aware of what you're bringing up. The "cards" especially are not the metaphor we intend to use, just a shortcut to get this in front of people. I hope you'll bear with us :)
- breck 7y agoI love the "cards", or at least, the step in that direction. Just like Apple Numbers, it seems to point to a future paradigm of software development IDE experiences. Something a lot more freeform, flowy, than a traditional file/tabs UI. Some files are 2k lines long, some are 10 lines long; some are text, some are data; it's time we stop cramming everything into the same square file editing box. I think there is room for a lot of innovation here in the UX of developer tools. Was very excited to see that.
- chasefoto 7y agoI've been using the private beta for several months now. It took a few hours to get the hang of it, and once the language clicks, the speed of development moves quick. I'm sure the Dark team will be releasing more in depth videos soon with a look into the language soon!
- bgnm2000 7y agoA little over a year ago I was building an app, and decided I'd have literally no backend at all. I wanted to build something fast and ship it to the appstores as quickly as possible to go through the process. After I launched, it was featured by apple and was getting thousands of downloads per day. Users wanted to be able to save their data across devices - but it wasn't something I really had time to build in the ways I had in the past. I had heard what Dark was up to, and was lucky enough to join the beta. Dark now powers the backend for my app (nzd.life) - and I really can't express just how amazing it is to use. We added the functionality in just a weekend with a handful of LOC. Dark really is a game-changer. For any entrepreneur / dev who wants to move fast and ship things, they should try Darklang ASAP.
- breck 7y agoThis is an awesome case study. Thanks for sharing. I was having trouble coming up with good use cases for this, but this makes a ton of sense. It's basically like a much more advanced, better Firebase/Lambda/Google Cloud Functions/Azure Functions. I am in the same boat. I often build apps that are pretty much 98%+ clientside, but there are just a few routes I need for the backend that would add a lot of value, but if I were to create those I can no longer sleep soundly at night because suddenly I have to worry about online storage security, pingdom checks, deployment pipelines, etc. Now I get where this could be really, really useful.
- deleted 7y ago[deleted]
- thesausageking 7y ago> Dark is a holistic programming language No thank you. There's zero chance I'm going to learn and build anything in a language owned by a startup.
- pbiggar 7y agoHonestly, that's totally cool. There's a certain risk profile that's right for where Dark is now (new startups, low risk projects, under-resourced projects/teams). Folks with a different risk profile should not be using Dark at the moment.
- deleted 7y ago[deleted]
- eropple 7y agoRespectfully: why should you be considered a fair steward of trust for them, either? Those people shouldn't be using a startup-backed, no-accountability platform either.
- inimino 7y ago> a certain risk profile Sure: hobby projects and experiments. I would not include "under-resourced teams" or "new startups" in that, without many strong qualifiers attached.
- Etheryte 7y agoWhy would a new startup want to add another factor of uncertainty into building their product? If you want to prototype fast, you use whatever your technical side is comfortable with, you don't pick a new tool where you don't know how or even whether you can do your thing. Personally, the only real user segment I see for a proprietary language built by a startup is hobbyists and language enthusiasts.
- neuromancer2701 7y agoSo what kind of prototype do you have to have to get money to work on this for 2 years?
- pbiggar 7y agoHonestly, our "prototype" was screenshots from an 800 line demo, and about half the people we spoke to believed that this wasn't actually possible to build.
- brintnc 7y agoCan you speak more to the scope of this? I'll be watching the video later - but, I'm curious how this "isn't possible to build"? Also curious about the reasoning behind a new language (Dark), instead of supporting other languages out of the box. Could've started simple with supporting node / python and worked towards go, rust, etc.
- pbiggar 7y agoSpecifically in the context of fundraising, we said "backends are way too hard to build, we can remove all the accidental complexity of infrastructure, deployment, and APIs". Many people felt that that was not possible. The "Dark's philosophy" video addresses the language a little - everything that's cool in Dark is enabled by the super tight integration between the language, editor, and infra.
- nickthemagicman 7y agoThis is really cool and very intriguing. Can we access the data store/our data outside of dark? What is the datastore build on top of? Is that proprietary? Also, is there the option to use the raw Twilio API if we want or is the dark version the main one supported?
- pbiggar 7y ago> Can we access the data store/our data outside of dark? Yes and no. You can easily put an API in front of it so that you can expose it however you like, download it, etc. But there isn't something like a postgres connection string. > What is the datastore build on top of? Is that proprietary? The goal with the datastore was that there is no impedance mismatch between values in the runtime and values in the datastore. The actual implementation is a thin layer over postgres. > Also, is there the option to use the raw Twilio API if we want or is the dark version the main one supported? Yes. That Twilio::sendText call is just a wrapped HTTP call, and under the hood it's pretty similar to how we called the Slack API in the video.
- neutogouln 7y agoThis definitely deserves to be on the front page more than any discussion involving Snowden. /s #HNPropaganda
- steve_adams_86 7y agoHaving worked full stack for so long, sometimes things like this seem way over the top and I don't really get it. Why not have control over your language? Why not have control over deployment, VCS, servers, etc? I think I understand now that this isn't for me, but could have been once. At one point in your career, you know little or none of this stuff. Something like this would have been very empowering for me while I figured it all out I bet. I like to see technologies empowering people to do more, so I'm looking forward to seeing what people build with this. It looks pretty cool so far. I would be afraid of hitting limitations and being locked in. That would be a major drag.
- eternalny1 7y agoI am in the same boat, I've been full stack for many years across a variety of technologies. The intro video doesn't seem like anything is being made any easier, other than hiding a few of the templated bits away from the developer. But the developer still has to understand what all this stuff MEANS. You need to understand REST, GET, PUT, REPL and any other acronyms that are involved in API development. If you know all that, why not just use an established language you already know and build the API, with the added bonus you aren't in a closed language with a closed system that can disappear at any time? PLUS you can do literally anything you might need to, without hoping that things like this might get around to implementing that feature in the future (which again makes their tool more advanced, opposite of what they are trying to achieve). Programming is for programmers, and programmers understand how to build APIs ... it's quite simple.
- steve_adams_86 7y agoOne thing that crossed my mind while walking since my last comment is that this could be great when you work on a team with some junior developers. Like you say, they need to learn all the acronyms and concepts between them, but they're working in an ecosystem with guard rails and mentors who (assuming they're experienced with Dark) can easily keep them on track and help them solve common problems. Hopefully there would be less edge cases and rabbit holes to die in. At the same time, I value all those scary holes I ventured into as a junior dev, the problem solving skills it helped develop, and the independence it instilled. It's hard to say, I think this is a cool idea but I'm biased to prefer my own methods I guess. I can't imagine working in such a closed ecosystem these days.
- halfway 7y agoThe way workers and events are exposed looks pretty slick, and I think abstracting away infrastructure and dev environments is the future for teams who care about speed to market. One nagging question is, how do you plan to make money? Will you have a free/freemium self-service offering? Any plans to target enterprise? I think some assurance of financial viability would ease the minds of otherwise reluctant adopters. Full disclosure, I'm a solo developer working in the IaaS space.
- pbiggar 7y agoWe charge for infrastructure (that is, we host your infra, so you pay based on usage) - this is also what we did at CircleCI. Small users will pay us very little or fit within the free tier. Huge users will pay a lot. We plan to support enterprise users too, but that's a little bit down the line.
- ryanworl 7y agoHow confident are you that your database abstraction is going to fulfill the needs of someone with anything more than a few trivial query workloads? I didn't hear much about the database at all other than "it just works." This sounds like a recipe for full table scans falling over once more than ~10K records are in a given table. What about transactions? Can I do joins?
- pbiggar 7y agoThe model here is that we own the responsibility of making it scale. We haven't solved the problem of significant workload, but there doesn't seem to be any reason why this wouldn't work - certainly our current (low-scale) users have not had any scaling issues with Dark. If there's a fatal flaw we haven't thought of, please let me know. We deliberately cut relational features for now because they didn't mesh with our language. We want to add joins back - right now you're doing stuff the NoSQL way (which is not my preferred way, but it's where we are today). We haven't figured out or transactional model, but we want to have a good story around that.
- ryanworl 7y agoSent you a Twitter DM. Too much to type out, but I have some ideas for you.
- pbiggar 7y agoThanks!
- vosper 7y ago> We want to add joins back - right now you're doing stuff the NoSQL way Can you expand on the database capabilities? By NoSQL do you mean no relational data, no constraints, etc? You can do joins in Mongo, but it's still not an RDBMS. And you can have relational data and constraints in databases that support non-SQL query languages. NoSQL is a bit of an overloaded term these days :)
- 7y ago
- Agebor 7y agoGreat to see you unveiled. Best of luck, i really look forward to having a real cloud-native way of developing software. Do you guys plan to support smart diffs for code reviews? As you work on AST level, it should be possible to detect some more patterns, e.g. an re-arrangement of some pieces of code, refactorings of many identifiers, etc., categorise them and have a diff summary for the review.
- pbiggar 7y agoWe haven't started work on the built-in code review, but that seems like a cool idea, thanks!
- brandonmenc 7y agoThis reminds me of the way Meteor was hyped up. Except now with vendor lock-in at the language level.
- OmarIsmail 7y agoThis is really awesome and even if it doesn't "win" is a glimpse of a future where you can build a full scale tech company and nobody needs to know about things like k8s and "service meshes". This is obviously very early but for doing basic backend stuff there's so many smart things here going on already that it's already 10x better for the use cases they're targeting. The one thing that didn't get covered in the "Dark in action" video that should have is where do the twilio/slack tokens get stored? I'm sure there's some environment/global variable somewhere UI somewhere but the fact that it's alluded to but never shown is an annoying omission. If they work on a ton of integrations (which is super annoying work unfortunately) I could see this being a big competitor to Zapier or the whole "glue" type infra work that so many companies deal with. If they take a marketplace approach where people can build "blocks" that are easily shared that would be a big deal. And considering they run the whole stack, monetizing the sharing of blocks would be a cool business model too.
- pbiggar 7y agoThank you for the kind words! > The one thing that didn't get covered in the "Dark in action" video that should have is where do the twilio/slack tokens get stored? I'm sure there's some environment/global variable somewhere UI somewhere but the fact that it's alluded to but never shown is an annoying omission. We actually just put them in functions. We haven't built a secret UI, and we didn't build global vars because functions do the same thing. > If they work on a ton of integrations (which is super annoying work unfortunately) I could see this being a big competitor to Zapier or the whole "glue" type infra work that so many companies deal with. If they take a marketplace approach where people can build "blocks" that are easily shared that would be a big deal. We plan to add a package manager so that packages (which could be wrappers of various APIs) can be shared. So similar to npm, rubygems, cargo, pypi, etc.
- bontaq 7y agoI guess if you wanted to do something similar but open, you can edit code directly on your server, use erlang/elixir's hot reloading, and call it 50ms deploys.
- pbiggar 7y agoWhen we were designing Dark, we wanted to be sure that it would actually be a thing that was safe to do, so it isn't just the same as hot reloads. Have a look at my video in the blog post: feature flags and versioning are a super important part of making this safe!
- zulgan 7y agocongratz! maybe for the generation which grows up with scratch, new concepts and ideas are needed. not sure if darklang will make it, but exploration in the space will surely help. writing this from while using emacs as a window manager(exwm), made me realize how impossible it is for me to evaluate change. best of luck.
- pbiggar 7y agoThank you, Jack!
- nnq 7y agoIs there an open source version of the language? ...bc I'm not touching a programming language with a ten foot pole if it hasn't got at least two implementations, and at least one open source :| Sure, keep the IDEs and deployless infrastructure and all proprietary, but a core programming language in 2019 can only be open-source. Heck, even Microsoft gets it now.
- falcolas 7y agoSo, no Rust or Go for you? EDIT: I got it, I got it. Go has multiple implementations. Bad example.
- eikenberry 7y agoGo has 2 implentations.
- CameronNemo 7y ago* cameronnemo laughs at gcc-go
- muricula 7y agoThree counting google go, gcc-go and llvm-go. Last I checked the latter two were quite incomplete.
- eikenberry 7y agoGcc-go lags behind, but is official and kept complete. Llvm-go is unofficial.
- muricula 7y agollvm-go is checked into the (recently unified) llvm repo now, so I think that it's official now. They do lag behind though.
- giancarlostoro 7y ago
- wefarrell 7y agoWhy invent an entirely new language instead of using an existing popular one such as JS or Python? It's hard for me to see the benefits being worth the difficulties. Edit: after seeing the building block like nature of the editor it makes more sense to me. It's ambitious and a really cool concept. Would be great to see wider applications of that editor/language.
- theflyinghorse 7y agoThis is interesting. Congratulations on your hard work! What does error handling look like? Do individual cards basically become individual classes with functions and handlers? I would love to see more examples of apps build with dark. Does anyone know if there are tools in reverse of dark - build API and based on that create front end?
- pbiggar 7y agoError handling is done with Results and Options. We have a concept called an ErrorRail to simplify this: https://medium.com/darklang/real-problems-with-functional-languages-efe668c5264a https://medium.com/darklang/real-problems-with-functional-la...
- d--b 7y agoThis would be awesome if node wasn’t around. But I feel like this is a 2D canvas on which you throw node functions. Node+express is already simple enough...
- pbiggar 7y agoAgreed about the 2D canvas; we've been cutting scope aggressively to launch this. We have a different metaphor in mind but it will take us some time to implement.
- artfulhippo 7y agoConceptually, Dark is a game-changer. The question is: can you deliver on the details? Can apps written in Dark scale to 10k LOC or will the browser UI get jittery? How many concurrent users can Dark apps handle? Do you integrate logging and metrics? I hope you are making an iPad app. That would be truly next-level.
- pbiggar 7y agoWe hope we can deliver! > Can apps written in Dark scale to 10k LOC or will the browser UI get jittery? We've had a number points where there editor became unresponsive and we had to rearchitect parts of it. We feel pretty confident about scaling the UI - not so much that it's perfect but that the problems are tractable. > How many concurrent users can Dark apps handle? Many more than our current users need, but not as many as we'd need for general release. One of the reasons we're in private beta is that we need to do a lot of work on scaling to make sure we can support new users without damaging the experience for current users. > Do you integrate logging and metrics? We have integrated observability, and we plan to have metrics but don't yet.
- maxdeviant 7y agoDark looks really cool. When I heard about it before my initial reaction was a huge "nope", but after watching the videos I'm curious to try it out. It's amazing just how little friction there is for you to get an API endpoint backed by a datastore up and running. That being said, there are a bunch of unknowns. Having my entire application, even down the language it's implemented in, being proprietary is a little scary. Will definitely be looking forward to playing around with this. Just as soon as I get my signup email ;)
- y4mi 7y agoYou might want to check out the serverless framework. It's not remotely as unique as you seem to think, as even that framework is just one of many. https://serverless.com/ https://serverless.com/
- jamesb93 7y agoThey are 'allowing' people into a private beta of a programming language? Coupled with the fact it is not open source and has a bunch of fad ad-tech videos on the front page this is so many red flags.
- quickthrower2 7y agoIt's pretty smart from a marketing point of view. It gets everyone on HN riled up and so lots of comments and upvotes whenever they post.
- turtlebits 7y agoAgreed, the quality of their web site tells a lot, especially when their product is for developers - Trendy font that reminds me of Comic sans - 1 MB of images and JS - Mission statement and values read as generic lifestyle brand copy. - A 1.4 mb PNG header image on their beta sign up page - Tiny unreadable video (with huge black borders) or full screen only.
- type0 7y agoIt's a perfect language to implement dark patterns, in fact they could trademark that term /s
- erandros 7y agoI agree, but how did it get so many upvotes? there's a huge disconnect between most top level commenters not liking it and the aprox. 350 karma. I'm a new user so this is very confusing to me.
- karmakaze 7y agoHN has a much broader population than individual comment threads might indicate.
- deleted 7y ago[deleted]
- harebear 7y agoI'm recalling the disaster that was the Parse framework. What makes this any different?
- TazeTSchnitzel 7y agoIt hasn't had its incredible journey yet!
- agumonkey 7y agoI still remember how involved pbiggar thesis on compiling scripting languages such as php was https://paulbiggar.com/research/ https://paulbiggar.com/research/
- md5person 7y agoWho is this for exactly? I don't see how the target can be entirely non-technical people, since this still assumes some knowledge around databases/functions/REST/HTTP/Schemas/etc. Technical people have very little reason to use this, since this platform is a walled garden of proprietary tooling, and there's only so much you can achieve with abstractions and fancy ORM. You won't be able to break out of the mould when the time comes, so why waste your time in the first place? Do it right the first time and maintain your flexibility and freedom later on. I believe the only remaining target audience here is technically-inclined people that want to build a cheap prototype quickly, just to test ideas. This is a playground basically.
- sbarre 7y agoThere is a large - and growing - population of technically-minded people who understand the core concepts you're referring to (REST APIs, databases, HTTP, etc) and have ideas or needs for applications, but don't have the experience required to build non-naive implementations of their ideas. Moving the bar on "high-level programming" up a few notches to remove even more of the plumbing required to build and launch an app is only a good thing in my mind. It provides more options for more people. Dark definitely won't be for everyone, but it seems to me like it will empower a lot of people to bring their ideas to reality more easily than before.
- uasm 7y ago> "Dark definitely won't be for everyone, but it seems to me like it will empower a lot of people to bring their ideas to reality more easily than before." I agree. > "There is a large - and growing - population of technically-minded people who understand the core concepts you're referring to (REST APIs, databases, HTTP, etc) and have ideas or needs for applications, but don't have the experience required to build non-naive implementations of their ideas." Sure, but one could argue the Darklang approach is actually not that far from a "naive implementation" of those ideas. There's only so much you can do with prefab code and lock-in tooling. There's definitely a market for "Wix for SaaS software", but does Darklang strike the right balance?
- marcell 7y agoI'm having trouble understanding what this is. Is it supposed to be a competitor to Django/Rails/etc.? or a competitor to ansible? a competitor to docker? Something else? If I have a Django/Django REST Framework app, can I deploy it with Darklang? How is it better than "git push heroku master" for small apps?
- samtheprogram 7y agoIt seems like an elm-lang for the backend -- by that, I am strictly referring to its all inclusive nature. You must use their language, build tools, infrastructure, et cetera. It even seems like you must use their in-browser IDE; though it has advantages they demonstrate in the first video in the post, you're sacrificing a _lot_. Unlike elm-lang, it's not open-source. So to answer your question, no, you can't deploy a Django app with their platform. EDIT: It seems like you're even giving up git for their own particular brand of version control that is tailored for their use-case, e.g. seems to include in its scope database migrations.
- ubu7737 7y agoLike all projects hoping to reduce the complexity of software development, this will go nowhere.
- 29athrowaway 7y agoHow do you do version control with this? or debug? or test?
- carlosdp 7y agoI think the fact it maintains the "backend/frontend" separation makes it an awkward product solution imo. Dark being a proprietary language means most "experienced" or "full-time" software engineers probably won't touch it. You can get pretty close to "deployless" with FaaS services now anyways in whatever language you like. So if this is being targeted toward low-experience/no-experience developers that just want to get something running, how is it addressing the problem much better than all the no-code/low-code solutions? For that market, I don't think having them even deal with a separate "backend" and "frontend" is a good idea, they should just be dealing with logic only and have that whole concept abstracted away.
- ithkuil 7y agoIt seems that darklang goes one step further than your average faas: every new code you write is deployed as you write it without any explicit deploy action, but the design of the Lang/IDE ensures new code is always behind a feature flag that makes that new behavior visible only to you until you decide to expand the audience until eventually reaching 100% of the users. You can do that with any language and any serverless stack around, but it still requires work. I'm struggling often to make my teams accept that this little extra setup work will let you iterate faster and often it's not that obvious that it would, since the overhead of the process is non-zero (for some value of zero). I can't wait to try darklang; I'm really curious. I just need to think of a pet-project that would be suitable for the beta.
- carlosdp 7y agoThat progressive deployment is neat and all, but I'm not convinced that's a problem that actually existed. More importantly, I'm definitely not convinced it's a big enough feature to drive a significant amount of developers to sacrifice the ecosystem benefit from using a popular/open-source language to use a proprietary language that only works on one proprietary cloud host. Like how is that a 10x improvement on modifying a Lambda function in something like Netlify and clicking "Deploy"? And just "Rollback" if it goes wrong? For most products, which have relatively small user counts, they don't gain much from gradual rollouts.
- joshschultheiss 7y agoCongrats on the private beta launch! I look forward to doing some tire kicking when it's in open beta ;) There has been momentum around this kind of idea (personally I've used WolframLanguage, Anvil) - pros and cons to each approach. I'm excited to see where this goes!
- agentultra 7y agoNot sure I'd want to be writing services I depend on in a language whose priority is ease of prototyping. In his post, Real problems with functional languages [0], Paul Biggar creates a false dichotomy: static types help us to write correct programs while dynamic types let us prototype faster. Dark wants to be able to do both. I believe Haskell allows us to reject outright incorrect programs sooner and allows us to prototype things faster due to its types and inference engine. I don't really see how Haskell is poor as a prototyping language. From experience it's better than dynamic languages as it has allowed me to focus on logic and domain problems instead of mucking up my code with brittle run-time and equality checks... and then chasing down bugs I've made for myself. No where is it mentioned what type system Dark is using. Will Dark allow a program to be deployed that it cannot reason about? What about higher-kinded types and polymorphism? Does it enforce termination or is bottom a type in every kind? Does the type system enforce linearity in usage? Quotient types? Row types? This looks like a cool project but I don't think I'd use it for anything without knowing more about how it works. [0] https://medium.com/darklang/real-problems-with-functional-languages-efe668c5264a https://medium.com/darklang/real-problems-with-functional-la...
- OutsmartDan 7y agoThis may be too ambitious- throwing away control over code, editors, infrastructure, and having a sub-par offline experience seems like a dangerous move. After watching both videos, Dark just looks like a more managed version of AWS Lambda, with a fancy proprietary editor.
- desmondl 7y agoBrain dump: Looks very cool. From what I can tell... pros: * No tooling to set up, don't have to think about project structure or computation (VMs or cloud functions) * Don't have to think about databases, connection strings, etc * Fast deployments * Perfect for rapid prototyping or hackathons cons: * Vendor lock-in at the language and infrastructure level * Not open source * Have to learn a new language Compared to serverless (for a CRUD application), I wouldn't have to write configuration to set up the API endpoints / dynamodb tables. Also, deployments would be super fast which closes the developer feedback loop. I shouldn't have to worry about emulating my stack locally or deploying my stack every time I want to test my code. The cons make this very hard for me to buy though. My ideal framework would be open source in a popular language (JS / Go), runs on cloud (AWS / Azure / GCP), fast deployments (no cloudformation), low configuration / convention based (like nextjs), and integrates with popular NoSQL data stores (mongo, redis, etc). Basically it would be completely conventional with an opinioned data access and the ability to override features to add more complicated functionality like optimizing data access after the initial prototyping.
- hidiegomariani 7y agonot sure to which spectrum this falls into but: how different is this from firebase? or from any other backend-as-a-service? surely not something for engineers, but for business/product people that want to quickly bootstrap/hack their own backend/api
- dopeboy 7y agoI had a chance to sit down with Ellen, one of the co-founders, and see an earlier beta. Congratulations to the entire team on this milestone; excited to see what you have in store. For context, I used to run a consulting company where I shipped a lot of greenfield software, especially CRUD MVP apps (which I think is a segment you're targeting). So I love folks trying to make this kind of work easier. I'm curious who you see your audience as. If you look at a spectrum across skill level: * On the far left you'll have those learning: univ students, boot camper's, technical folks in non-eng jobs (think operations-y people who are zapier+spreadsheet wizards). * In the middle you'll have junior engineers starting their first or second role. * On the far right, you'll have senior engineers who are looking at factors beyond functionality like architecture, style, performance, etc. I think the middle is out. These are folks who've made an investment in their education and are looking to apply it. They're looking to earn their stripes and might trade efficiency for that. There's also secondary effects of using the incumbents like membership into a community (I run the SF Django meetup so I see this up and close). The far right is out because DL is hiding the complexity they're precisely interested in tailoring (or at the very least, having the optionality to in the future). Additionally, they're very fast at the operations you've optimized for (CRUD) so that's not necessarily a barrier for them. They'll be working with boilerplates that are deployment ready (though not instant like y'all - that's pretty cool!). Yes there's some pain here you're solving. Not enough to justify the switching costs, IMO. I think that leaves you with the beginner crowd. Zooming in further, I'd exclude students since there is no value for them to invest in something they wouldn't get hired for. There's the casual indiehacker / weekend project person. I think this would work fantastically for them because they just want to spin something up as fast as possible. There's also the operations person who does a lot of ducktaping of airtable+zapier+typeform+etc. I know many people who are doing that and when they hit a ceiling, this could be perfect. I'm arriving to the following conclusion: though you're not a no-code tool, you share the same target audience. Repl.it is a good comparison here.
- eternalny1 7y agoThis is an excellent analysis. I'm in that "far right" crowd so I am just not seeing this at all. > I think that leaves you with the beginner crowd. The problem with that, is ... well ... $$$.
- nikolay 7y agoI don't like the arrogance of such projects. Plus, when I decide to invest into a technology, I do due diligence, and I'm not impressed here.
- deleted 7y ago[deleted]
- tmikaeld 7y agoWe have no insight as to what the actual costs of running the infrastructure is. Dark can basically ask for any numbers they want and you'd have to pay it if you build something sizable on this platform, because moving away would be even more costly.
- pbiggar 7y agoWe absolutely want everyone using Dark, so jacking the price like this would be extremely counter productive. If we did that, no-one would start using Dark after that.
- pg_is_a_butt 7y agoWhat if the price without jacking was still too much? Disclose the data. Disclose the scalability.
- nambit 7y agoWill you guys be transparent on the pricing then?
- pbiggar 7y agoAbsolutely! We don't have any pricing right now because we have not done any work to figure out what the pricing will be.
- carapace 7y agoHuh, but you have investors, eh? :-) What about this: pass through infrastructure cost with a wee markup for maintenance/support and negotiate a modest percentage of gross revenue from your successful client companies. That way you have a low-risk "farm" of potential big hits, and your users have stable costs.
- pg_bot 7y agoPaul, the incentives you've put into place with this business will destroy your company. The proposition you've set up for developers is to build their buildings on land you still own. Established developers already understand the risks associated with this practice and will avoid you. At some point if anyone manages to build a business with darklang you will have them over a barrel and they will accept any cost increase below what it would take to switch away from using your platform. If you don't want to raise prices, your successors will. I don't think this idea will work since there are too many viable options in the marketplace, and people are smart so they will avoid lock-in when they can.
- taco_emoji 7y agoI really want to try this, but when I put my email address in the website, it's making me fill out what I want to build with it and when I plan to ship and what's my favorite cloud platform... Holy crap, y'all, I just want to try out your language. It looks cool and all, but why can't I just download the IDE and try it? How are you going to get traction if normal people can't just play around with your language at home? The tail doesn't wag the dog - I'm not going to recommend this for any projects at work without being able to try it first on my own.
- dopeboy 7y agoI'd be easy on them. They're still in their early days and want to exercise control over who receives the product. They probably have a good idea about who it's a fit for and who it isn't. Additionally, they probably want to be high touch right now since it is a whole new language + IDE + paradigm.
- taco_emoji 7y agoThat may be fair, but I'm looking at the publicity for this and how they're "finally ready to show you Dark in action" which I guess just means... they have a couple demo videos and a private beta? I guess I'm just disappointed because my interest was piqued a couple months ago (probably when they hit alpha??), and I expected the next big announcement to be able to download something and try it out, or at least play with an online REPL. Also IME "Show HN" means I can try something out. In this case it just means "hey we've hit another milestone but you still gotta wait indefinitely if you want to use it". I'm probably being too negative, but again it's because I'm excited by the concept. A definite hurdle for me on my side/hobby projects is setting up all the infrastructure for some little toy app, so this concept is really exciting to me. Congrats to the team, seriously--based on the demo this is a pretty mature product and the UX looks really amazing. I hope the next big announcement is that I can try it out :)
- tnolet 7y agoWhat scares me is that their whole site doesn't mention the word "security" once. Also "testing" is in the FAQ as a "we're working on it"-item.
- pbiggar 7y agoThe FAQ mentions security. We've been working with a security consultant for over a year. One of the reasons we're in private beta is that we need to get security right before we're generally available.
- tnolet 7y agoNo, it does not. The word is not used anywhere on the page. There is a mention about privacy, PII, GDPR, Audit logs etc. and how that's not implemented yet. If that's what you meant, fair enough. Still a bit scared for your initial beta users running their business on this as mentioned elsewhere.
- pbiggar 7y agoOh, so it doesn't! Sorry, I meant to check before pressing send but got ahead of myself. We do quite a lot of security work - it's probably the one area we don't cut scope on. Someone reported a security bug today and we fixed it immediately.
- tnolet 7y agoOk cool. Would maybe make sense to create a dedicated page for this outlining how you are keeping my data safe and unwanted people out.
- mapcars 7y agoWell I watched the videos, honestly what he is talking is exactly all the problems I've been facing for the last 7 years working on web backends. I wish you well and hope I can use Dark at work one day.
- msvan 7y agoI think this is really cool. I love that they're writing a projectional editor and trying to make that work, because it's such an obviously good idea that should be more widespread. You can make major DX improvements by tightly integrating tools that are presently decoupled, and that seems to be the big idea behind this. I have a hard time believing this is going to work, but I've been wrong before and if I lived in the US I'd be tempted to apply for a job. How often do you see programming languages get funded!
- al2o3cr 7y agoMaybe it's just the color scheme, but a lot of that UI reminds me of the Kickstarter-era demos for Light Table (in particular, the "lots of windows each with one function inside" pattern)
- alphagrep12345 7y agoReally cool idea. Even after being a coder for 4 years, I still don't know internet stack and I'm greatly confused as to what backend/frontend to use whenever building a new product. Looking forward to using it as I have tons of small prototype ideas. Why didn't you use an already common language like python, with rest of features? Is it difficult technically? I'm just trying to understand your choice.
- luxuryballs 7y agoI’m not even sure if developers are the target audience here, but rather C levels who will dictate that the developers will use this to lower perceived costs and reduce theoretical development time. What could go wrong?
- dkersten 7y agoI... don't want to be negative, I like new languages, but I can't help but feel underwhelmed. I guess I just don't understand how this meets the goals that were talked about in previous posts (or how it allows development "without accidental complexity"). I don't understand how this makes things easier and I guess when they claimed that deployment is super fast, I didn't realize they meant to infrastructure under their control. Besides the problems other people mentioned (vendor lock-in[1], non-open source programming language, few details on security), being limited to deploying on their platform, while not that unexpected and I certainly understand it, is not what I'm looking for in a programming language. I also don't really like the "HTTP is the FFI" aspect.. even in mainstream languages with fantastic library support, I find myself reaching for FFI (or libraries that themselves use FFI to wrap something else) surprisingly often. I guess this will be a hard pass for me. [1] "We're in this for the long haul" isn't the only reason to be worried about vendor lock-in. The other reasons might be worry that the pricing changes (for the service or for support) or that their priorities change or simply don't line up with yours (eg you require a feature that they don't plan to add).
- digitalsanctum 7y agoI watched the videos and read the blog post. My response is equal parts amazement and skepticism. They poked fun at Kubernetes but what they have is something less transparent (more magic) and requires you to learn a new language and way of working. I'd be much more receptive if the option was there to peek under the covers and let me use my own language. I'm also curious how this would work in a CI/CD environment inside enterprises that require it. This all being said, I signed up for the beta and look forward to kicking the tires.
- dougdonohoe 7y agohttps://en.wikipedia.org/wiki/PowerBuilder https://en.wikipedia.org/wiki/PowerBuilder
- whsheet 7y agoI can deploy a Docker-based node backend with basic functionality from my phone's ssh client in five minutes. Give me a bit more time, a keyboard and I could build you any API endpoint, http server, glue code between DB or even low level proxy server functionalities. No offense but isn't the 'problem' backend solved years ago?
- dqonvzpa 7y agoThis project is awesome. I implemented a project which uses configuration files to define RESTFUL API, the core code is here: https://github.com/dackon/jtool https://github.com/dackon/jtool
- baalimago 7y ago>"I can serve them whatever I want" Well, this is the problem with designing backend, knowing what to do. Not actually writing the implementation. The way I see it, no problems are circumvented. Cool development-environment nevertheless, it'll be really good for beginners.
- shalabhc 7y agoGreat stuff! My suggestion is to really leverage the possibilities opened up by the design choices that make Dark different - the structural editing and db/infra/editor integration. E.g.: - Have multiple projectional views of the system, triggered on keypress, e.g. caller context, database context, handler context. So if I'm editing a function I should be able to see the handlers that are affected, also the call stacks up and down, even show function calls inlined, current live errors overlaid, etc. - Easy example based testing. Can I just click on a function, type input values at the top, then dark shows my intermediate values and output, and then I mark a 'check' on this trace to stamp it as a test case? Then every related change (or a special button) runs affected tests and I can see what's failing. I didn't see any testing in the demo. - History of each function, each handler, each table - absolutely need this, with 'blame'. - Immediately live is nice but really you want to roll out some related changes together, and a 'diff' of a snapshot against another one is great. I should be able to see the db diff, the function diff and handler diff in one integrated view. Should be able to 'label current version', in addition to auto-save. - Annotations - these should be allowed everywhere. I assume functions, AST nodes, tables, columns etc are already reified, so I should be able to link to them in free form annotation comments that I may put in the code or just floating around by themselves. Documentation needs to be integrated as well. At the very least I should be able to link to a function or table via an external hyperlink. - A standard CRUD UI for DBs should be available.
- shalabhc 7y agoOne more for ya. - DB/field annotations for privacy - given it's 'one integrated system', can we attach a privacy attributes to fields or db and automatically hide them everywhere (even in the dev view?)
- pbiggar 7y agoGreat suggestions, you'll be happy to know many of these are on the roadmap, and some have already been done! > Have multiple projectional views of the system, Some amount of this works already (you can see callers and callees, you can see the DB schema); we want a callgraph view for sure, and I like the idea of seeing the handler at the bottom of the call stack. > Easy example based testing Yes, this is planned to work similar to traces, and it should be trivial to turn a trace into a test > History of each function, Yup, planned > 'diff' of a snapshot against another one is great. Planned, but low on the priority list compared to the other stuff you've mentioned. > Annotations Planned. We've implemented some grouping (similar concept but obviously different use cases to tagging). Some of these annotations would be automatic or semi-automatic. > A standard CRUD UI for DBs Planned :) > DB/field annotations for privacy We plan two aspects to this. There is the "PII indicator" which says this is PII and shouldn't be logged at all. Then there's access-control lists where we decide who (if anyone) can view certain attributes (eg: this dev is a contractor, do not show them live values). Thanks for all the suggestions!
- goalexboxer 7y agoAm I the only one excited for this tool but with an actual programming language like Python instead?
- simplify 7y agoNode-RED is kind of similar, but for node.js
- _pmf_ 7y agoReminds me of how I started with PHP.
- bitwize 7y agoProprietary language. Proprietary IDE. Proprietary infrastructure. Each is required to take advantage of the others. NO FUCKING THANK YOU.
- greggirwin 7y agoFirst, thanks to Paul Biggar and the Dark team, for fighting complexity. Whether or not we agree with Dark's approach doesn't invalidate it in any way. It may mean we don't understand it. There are plenty of companies selling non-FOSS tools and making others successful with them. FOSS does not mean a secure future by any means. The fact that they know they have to prioritize making it a sustainable business is a good sign. Using any tool, and depending on it commercially, is a risk. You weigh that against who is behind it, the path forward if it goes away, etc. It's easier if you can keep building even when the company goes away. If you rely on their servers, there is always more risk. Is there more risk to a project like Dark than FB's Parse? Nobody can say, without inside information. What you have to look at, when selecting any tool (ignore the fact that there's a language component here, or that we're devs), is the benefit and the risk. If you have a stack that works for you, and you don't think there's a problem with how you're doing things, don't change. It's really that simple. But there is a revival of RAD, called Low Code, that says there are a lot of businesses out there with needs that aren't being properly met with our "modern" dev processes. If you can get a working product out, and it runs for a couple years, that's a win if you couldn't do it any other way. If you only use Dark to prove a concept, rewrite it after that if you're scared it will go away. Once you have a working product, though, good luck convincing the business it should be rewritten without strong justification. But we can step back even further and ask: Do you think the state of software development is great? Just OK? Don't see any issues? Do you think that complexity is killing us and things we call solutions really aren't? Or are you somewhere in between? In watching the videos, there are some things that aren't to my taste. But they note that this is not the final product. If you watch Paul's video, can you deny there is some deep thinking behind it, smart people who have already done a lot while being forced to make real-world compromises. Yes, it's a business, but they're doing it to make our lives easier too. Shouldn't we cheer them on and wish them the best of luck? That's what I'm doing.
- mattbillenstein 7y agoThere are a lot of interesting ideas here. They're two years in, I'd guess perhaps one or two years from the larger vision of supporting real applications with lots of users. I'm interested to see where this goes, and if they're not able to turn the closed-source version of this into a business, perhaps they'll inspire some community of OSS people to do something like it. I'll say after having worked on migrations out of proprietary platforms like App Engine, I wouldn't use anything I couldn't run myself all the way down to the bare metal should their company up and disappear. They will have a lot of problems convincing people to bet their business on this platform if it's completely closed.
- iliketocomplain 7y agoUse our lang! Then be locked in with us and pay! Yay! Why post marketing BS like this on HN, it's too smart a crowd to fall for that?
- totaldude87 7y agoHow much will Dark cost? A >>We're still determining specifics, but Dark pricing will be based on how much infrastructure you use. We will be charging for traffic, compute, and memory usage, similar to other infrastructure. Dark will be free to start, and will gradually scale up with usage. We expect that our free tier will fully cover small projects. ummm, no
- josephhurtado 7y agoPaul, first of all kudos on what your team has accomplished so far. And plenty of respect on having the courage to attempt a leap on how backend technology works. IMHO this as the first time we have improvement in the huge complexity required nowadays to have a backend, particularly for a small company which can not afford a whole Devops or Infrastructure team. Just a one question: - Given your use of OCaml and Reason ML why did you choose to go with your own language instead of using one of them. Wouldn't it be easier for developers to adopt say Reason ML, and then just use a library you provide?
- pbiggar 7y agoThere aren't any languages that support what we need to do to solve the complexity we want to solve, including OCaml/ReasonML. Given that, whatever language we'd pick we'd have to hack them to get what we needed, and then we wouldn't have JS (realistically, if we were to pick some existing language it would have to be JS), we'd have some shitty version of JS. Which is what App Engine did with their early versions: I worked on an app engine project that had a hacked version of Django where nothing worked.
- josephhurtado 7y agoI wish it was possible... as of now Darklang is mostly a language that only runs inside of Dark; that will be a problem in the future, but I understand that it's early days, and this was the sound decision to do now. Godspeed!
- peternicky 7y agoOk so I’ve read the linked post (who still uses medium?? ;)) and the HN comments and I can’t think of a reason to consider this product. Thinking about usage from two perspectives: As a developer, junior/senior/whatever, I don’t know why I would use this. There are so many tools that accelerate and mitigate the difficulties associated with building services that I would choose in a heartbeat over something like this proprietary, closed source product. As a manager/leader, I would never support using a tool like this. Again, closed source, lock-in, learning curve are a few concerns. I hope my tone was not dismissive; I would really like to hear people from the dark team sell me on this.
- maremp 7y agoI fail to see how this is "a holistic programming language". From what I see, I would call it a SaaS for building APIs. Even if I were able to use outside the platform (which doesn't appear to be possible) it looks more of a framework or DSL at best. The linked post, the videos, and the landing page are good in terms of marketing for non-programmers. But it is not satisfying to me as a developer, especially when trying to convince me to buy in the whole platform + custom editor stuff.