How do I start on building a newsletter on Rails?
As discussed in the chat, the easiest way seems to use a hosted newsletter service such as MailChimp and just embed their signup form. No need to custom build something for Rails, unless you need deeper integration.
Also, WIP now has a prototype available for signup forms for your products. For example:
It's not possible to embed it on your own site, or host it on your own domain. But let me know what you'd like and I might add it.
what's the best desktop browser ever? 🤔
I prefer Safari.
I used Chrome back in the day, but I found Safari to be quite a bit faster and more energy efficient. It doesn't have all the browser extensions Chrome has, but I have come to distrust those anyway as even popular ones seem to include spyware.
I specifically use Safari Technology Preview (available in Mac App Store) which is Safari's experimental version with all the cutting edge features.
Any way to forward SMS while visiting another country (where SIM won't work)?
I don’t know of any services that can forward your SMS messages, but I’m surprised your provider is unable to deliver them abroad. Could you switch to a different one that does support this?
With eSIM in the latest iPhones you’d be able to have a local SIM card while traveling as well. So you’d use that one for data, calling, etc and still receive OTP messages on your ‘home’ number.
What legal forms have you used for your startup?
How do you secure stuff like .env secrets.yml that have important keys and token away from contractors who are working for you?
There needs to be a level of trust when working with contractors. Apart from that you can create separate keys for contractors or set up the app in such a way that it still works without having all the keys in place. (Automatically disable functionality reliant on keys.)
How to store images in the database?
You could store an image in your database as a blob, but that's generally not a good idea as most databases aren't optimized for storing binaries such as images.
Considering Heroku has an ephemeral file system (i.e. you cannot persist uploaded files on the disk) your best approach is to upload the files to some online storage such as Amazon S3. (I think that's what you meant with CDN, but it's not exactly the same thing.)
The way it would work is the user uploads the file to your server (Heroku), and then your app uploads the file to your S3 bucket. Whenever you want to show the image you use the S3 URL.
Alternatively you could configure your S3 bucket such that the user can upload directly to S3 without the file ever touching your server. This generally provides a better user experience, but technically is a lot harder to achieve in a secure fashion. So my advice is not to bother with that until upload performance becomes a real issue.
Finally, the last option would be to use a SaaS that provides you with an upload widget, and takes care of uploading/processing/hosting files for you. Cloudinary has this feature.. This might be the easiest option, but probably the least flexible and most expensive.
Thanks Marc for the detailed answer. I would go with Amazon S3 option for now. BTW, How are you dealing with the images for WIP?
Uploads go to Heroku server which are then uploaded to S3 in a background job. We use imgix as a CDN in front of S3, so images are loaded faster and we can perform resizing/etc on-the-fly without having to generate them in advance. (Not as cost effective, but makes development a lot quicker.)
Whats a good GUI Tool for PostgreSQL?
I need some quick feedback on a software license structure.
The second option seems most appealing to me. I might not need the updates so I don’t want to pre-commit to buying them.
Additionally, it makes it sound quite good that I not only get the current version but also any updates in the next year.
I’m not sure how I would feel about having to pay the same full price again the next year. I think I would expect a reduced price for another year of updates. So for example $99 to get the plugin with a year of updates. And added that year I can extend my license for $49.
What are some things you wish you started paying earlier for?
Taxi rides from airport to hotel
Travel can be tiresome and the last kilometers are usually the trickiest. Finding the exact address of a hotel or Airbnb in a city you've never been to where people speak a language you don't understand. I often skip the public transit options and just get an Uber or Grab.
I don't need anything too fancy, but I feel much happier and ultimately productive if my accommodation is clean, ventilated, well lit, and overall is a place I enjoy being.
It's easy to go overboard with this, and you need to be careful with recurring subscriptions. However, I'd rather free up my time and focus on the core business than investing lots of time in developing services I can just buy. Think Intercom, MailChimp, etc.
Dating app for hip hop fans. Here's our genius marketing strategy. Critique please!
You want critique? Here you go: I'm not convinced a shared passion for the same musical genre is that relevant in dating. At least for me. I mean I like hip hop, but I don't really care if my date does too.
I do think there's room for more niche dating apps. Especially if it's something different from the same old swipe-and-chat model. Like if you could somehow incorporate the creativity of rap lyrics into the app, and possibly scare away anyone that doesn't appreciate that creativity, that might be interesting.
For example: your bio has to be a line, and the other person's opening message is supposed to rhyme with that. And maybe instead of regular chat, you co-write some lyrics. (I find that type of creative interaction in current dating apps much more enjoyable than regular chit chat, but it's not for everyone).
why is my site slow? bundle size is small
It seems like you are serving a couple dozen images from Amazon S3.
While S3 is great for hosting assets, it seems rather slow for serving assets. I think one of the reasons the images load so slowly is because S3 uses HTTP 1.1 which, unlike HTTP 2, doesn't support serving multiple requests in parallel. This means the browser can't start loading all images at once, but has to wait for image 1 to be finished, before it can download image 2, etc, etc.
Full disclosure: I'm not 100% sure that's the correct technical explanation, but based on my limited knowledge on the topic that's my best guess.
Okay, so what is the solution? Add a CDN like Amazon CloudFront to the mix. CDNs are optimized for serving assets like these. You will still host the images on S3, but let Amazon CloudFront take care of serving them to the browser.
Should we have a WIP newsletter?
I made this experiment once: https://wip.chat/weekly
It's a preview of what a weekly newsletter could look like.
Curious to hear your thoughts. Is it interesting? Would you prefer to see less or more? Right now it's fully automated. Does that work for you, or do you prefer emails with a more personal touch. For example me or a community manager summarising what you see in the email with human language and curation.
How to embed a private Telegram chat on a website?
Their web client is open source so technically you should be able to incorporate that into your site. I think the codebase is rather complicated though, so I'm not sure it's worth the time.
If you just want to be able to chat between the website visitor and you the admin, then you could build a Telegram bot that interfaces between the two. You'd receive the visitor's messages on the website, and using server-side code send them via the Telegram bot to your personal Telegram account. You'd then reply to that message in Telegram, which the server-side code picks up (e.g. using Telegram bot webhooks) and sends the response to the visitor. In order to do this real-time you'd probably want to use Web Sockets. All the visitor then needs is a modern webbrowser, no plugins needed.
There are existing services available that provide this all for you. I haven't used any, but a quick Google search returned these:
It's more embedding a public chat, so multiple users chatting together.
Yes I was thinking of a bot that duplicates messages to the Telegram group, but then it doesn't post as the user.
Otherwise I could build a new chat from scratch and just use user profiles from Telegram.
But since a lot of users from WIP are already on Telegram, I thought this would be a could idea to use a Telegram group.
Bouncing Images around a container. How would you do this?
Break up the problem in smaller bits and then tackle them one by one:
- Create code example with image on canvas: https://stackoverflow.com/questions/6011378/how-to-add-image-to-canvas
- Make image move on canvas
- Detect when image reaches edge of screen
- Make image bounce when reaching end of screen
thoughts on dark interfaces for web apps?
Is it okay to add paid subscriptions after launching a project without a way to use it for free?
As long as you’re upfront about it I think it’s okay.
Like Adriaan said you can just call it a free trial for now. I think that’s how Basecamp started as well. They launched with no billing system in place and figured they had 30 days (time of trial) to implement one.
How do you plan out your UI colors?
Is there a way to login to wip.chat when you 'add to home screen' on iPhone?
I don't think there's a good way currently. It seems like "Add to Home Screen" apps have their own cookie store which isn't shared with the regular Safari. Unfortunately there's no way that I know of to open the sign in link in the Home Screen app.
I'll think of a solution.
How do you decide which startup idea to work on?
I have a few criteria I use when deciding whether to work on an idea. I'll list them below, but I suggest coming up with your own that make sense to you personally.
How fast can I validate the idea?
Some products require a lot of upfront work before I can get any feedback. Other products can be quickly prototyped which will lead to feedback early on. For me that's crucial. It decreases the risk of wasting time on a product with no potential.
Does the reward/risk ratio make sense?
Related to the above. Ideally I focus on ideas that have high reward and low risk. Where reward is usually financial, and risk refers to invested time, money, and agony.
How much on-going maintenance will it require?
If the product is successful, how much work will it require to keep going? For example, I'll most likely skip any product ideas that require me creating content (podcasts, etc) on an on-going basis. Even if there's a huge money potential.
Do I have an "unfair advantage" ?
With plenty of ideas to choose from it makes sense to focus on one where I have a competitive edge. For me that includes the ability to relatively easily market to other makers (due to my network, BetaList, etc).
Does it contribute in any way to my other products?
Working on multiple products in parallel is tricky as there's only so much time in a day. Ideally I work on products that strengthen each other. For example I can market WIP to BetaList and vice versa.
Is it defensible?
Since I choose to focus on products that are easy to get off the ground, it's likely competitors will crop up. Some product ideas are more defensible than others. Related to the unfair advantage I talk about above.
any advice on how to price an advert in nomad flights for pitching minaal?
- Insert a test ad for a relevant product and measure number of click-throughs.
- Look up average CPC (cost-per-click) for your industry.
- Multiply CPC by the number of clicks your test ad received.
- Discount that price by 25% or so to get started quickly.
- Increase price when demand outgrows your supply.
Which service to receive email at multiple domains?
What are your favorite Ruby gems?
autoprefixer-rails– automatically adds browser prefixes like
-mozto your CSS
bourbon– helpful SASS mixins
normalize-rails– CSS reset
gon– set JS vars in controller (e.g.
turbolinks– fast front-end, without requiring complicated JS (e.g. React)
rubocop– for yourself to write better Ruby
better_errors– name speaks for itself
letter_opener– whenever Rails sends an email, it will just show it in the browser
.envfile for your ENV vars
Include humans.txt on your project site, or nah?
what would be needed to have all my WIP tasks tweeted when completed?
If there's enough interest I can look at either adding RSS feeds for completed todo's, webhooks, or Zapier integration.
I do have a lot on my plate right now though, so need to take different priorities into consideration.
Can you attach a deadline to a /todo ?
No. But if we had this feature, how would you like it to work? For example, when you don't meet the deadline what happens?